LxStorage

lx8421bcd's blog, record everything I want to share

TV端开发之选中放大效果实现

Android TV端开发从0到1的一点经验

选中控件高亮/放大是TV端中极其常见的交互效果 我们知道Android 5.0之后在系统级渲染上引入了Z轴的概念,那么想要选中放大直接scale + 抬高Z轴不就好了嘛 cardView.setScaleX(1.2f); cardView.setScaleY(1.2f); cardView.setElevation(ScreenUtil.dp2px(6)); 此题...

AndroidTV端开发随笔

Android TV端开发从0到1的一点经验

写在前面 一个月前接手了公司AndroidTV端3.0版本开发的任务,虽然说是重构,其实跟重写没有什么区别,2.0版本是公司外包出去做的,据说费用不菲,然而不知道外包的那个老哥是不是之前压根没写过AndroidTV端,浏览他的代码简直一塌糊涂,整个技术架构停留在2012年的水平。3.0版本UI基本换了一遍,这意味着我除了播放器核心外没多少能复用的内容。 尽管如此我还是没怎么加班并按时完成了开...

将老项目的Gradle升级到3.0引发的惨案

记一次诡异的bug

经过 上个月公司的应用开始了页面改版,负责需求的同学在一个嵌套滑动的交互效果上使用了anroid-support组件,一直以来公司应用的compileSdkVersion都是25,gradle版本是2.3,因为更新gradle需要重新测试tinker,所以一直没折腾。 这位同学上了support库测试的时候发现处理滑动冲突时有bug,查了一下返现新版support库修复了,然后给升到了28,...

兽王招宠物再放技能宏命令

再也不用担心技能放不出来才发现BB忘记招了

8.0回归,发现自己有时候被战复起来经常忘记招BB,按了半天技能按不出来才发现忘记招BB,现在自己也开始写代码了,不如研究一下宏命令来解决这个问题吧。 折腾了一晚上,弄出来个目前应该算比较好的解决方案 #showtooltip /cast [@pet, dead] 复活宠物 /castsequence [spec: 1,nopet] reset=3 召唤宠物 1,复活宠物;[nopet]...

一种Android蝇量级组件化方案

简单,实用,速成

前言 两个月前公司说要做一个新项目,先放在主App里面,如果后面运营的好,考虑独立出来单独做一个App,听到这种需求我脑子里第一时间就想到了组件化,后续需求详细之后也在组内提出组件化来做的方案,大家也表示可以一是,于是就开始了组件化技术选型之路。 组件化的概念已经有很多文章介绍,主要就是将一个大的app根据业务拆分为很多module,业务无关的内容沉淀到基础库,根据不同的需求,搭建好壳工程,...

Android视频播放自动转屏最佳实践

前段时间产品说要给直播间加个自动转屏,比较迷惑,因为自动转屏的话,躺着用聊天模式很容易误操作,基本没有直播平台采用自动转屏来切全屏,基本都是双击播放器切全屏。不过产品倒是很坚持,一直说先做上去看看效果,那就做呗。(埋点啥的也没有咋看效果,看客服投诉么2333) 提到转屏回调首先就想到了onConfigurationChanged()方法,所以就按这个方法出触发的事件监听写了个自动转屏方案 ...

AS2.3关于MIUI优化的兼容问题

昨天刚入手小米MIX,也恰好升级了AS2.3,在使用MIX调试运行的时候,却发现程序总是安装不上,报错信息是这样的: 点OK卸载之后却又提示卸载失败,然后调试安装就中断了,这就很尴尬,很明显关键字是 Failed to establish session Google 搜一下,发现就算SO上面的解决办法,也是说在开发者选项中把小米的“MIUI优化”关掉,原因未知。试了一下关掉MIU...

斗地主类游戏牌型判断算法实现思路

最近深度参与了一款地方牌类游戏的开发,规则类似于四人斗地主,游戏做得少,毕竟还是图样图森破,任务拆分的时候,估时估计的过于乐观,结果付出了连续加班的惨痛代价。不过经过这次经历也算是对牌类游戏开发有了一定程度的了解。 这次开发中我觉得最有意义的就是在客户端实现了牌型判断和出牌提示算法,由于是工作内容不能贴代码,所以这里只是叙述一下实现思路,写点伪代码做个意思,作为备份,另一方面供后来者参考。...

Retrofit2根据接口声明决定是否带Cookie请求

一种按接口注解声明编辑请求Header的方法

原文由本人于2017年创作于CSDN,后续修改完善提交于此。 注: 后来和后端商议过后,决定不用按接口来区分是否发送cookie,也就不需要使用这个方法来处理Cookie了,后来客户端都使用PersistentCookieJar进行cookie管理,不过本方法作为Retrofit的一种按接口注解声明编辑Header的方法仍有其使用价值。 原文: 整理自最近的项目经验,Retrofit关于...

彻底解决Fragment重叠的问题

简单粗暴

原文由本人于2016年创作于CSDN,后续修改完善提交于此。 在布局应用一级页面时很多App都会采取BottomBar + Fragment切换来构建。一般Fragment会使用FragmentManager管理,就是在一个FrameLayout构成的ContentView上做show和hide。 在这里有一个问题需要注意,在这种有多个按钮处于一个屏幕可以快速切换Fragment的UI布...