Android切换RecyclerView的Item布局(Expandable RecyclerView?)
让一个RecyclerView中的一个Item有两种不同的布局,可以用来给Item赋予多个状态,当然也可以实现类似Expandable RecyclerView的效果。
让一个RecyclerView中的一个Item有两种不同的布局,可以用来给Item赋予多个状态,当然也可以实现类似Expandable RecyclerView的效果。
2020年8月26日新方案,乖乖穷举
2020年6月1日我发现还有问题!
2020年5月22日新方案又来了,希望能结束这个问题
2020年4月21日还有Bug,正在修。反正也没人看,估计也没坑到什么人
2020年1月27日憋出了新方案,似乎修好了
2019年11月4日现在的实现有Bug,正在研究
2019年10月18日更新AppCompat 1.1.0的使用说明
2019年8月18日更新增强版
网上搜怎么实现自动切换深色主题都没资料的,全是实现,只能自己想办法了。
最终解决的方案倒是很简单,不过走了很多、很多、很多、很多弯路。脑子不是很好使了我好菜啊。
2018年12月1日 更新Cyanea
不是给用户几个主题选择的多主题,而是可以让用户选择任意颜色,这让难度上了一档次,尤其是想用一种不那么侵入的方法实现的话。
从主题的实现来分,主要分依赖Android和自己动手。但这里按实现难度排序。
虽然Google已经放弃了它的Android平板产品,但开发者不会(哭)。
在Mateiral Design中,有一部分是关于适配手机小屏幕和平板大屏幕的内容。这里是他们的一些实现思路。
不保证全对、可能更新,这玩意儿主要是给自己看的
2018年5月27日更新:更新了一些无用的笔记
2018年5月23日更新:增加了Material Desgin 2字体的可能的可选值
2019年11月22日 本文已过时 请查看Android官方的Dependency Injection教程和Codelab 谁能想到dagger-android要凉凉了呢?
2018年5月20日更新了测试的更多思路
2018年5月19日更新了Dagger2测试的思路
现在是2018年5月,Dagger2的版本是2.16,Kotlin版本是1.2,IDE是Android Studio。
过时的话就要话就要慎重地看。
Dagger2学起来是真心难受,现有的很多资料都已过世,误人子弟,而且和Kotlin结合在一起,会有很多很多坑和弯路。
Copy-pasting code makes it hard to refactor later on. As more and more developers copy-paste that block, fewer will know what it actually does.
本路线图指明的是:
从:对Dagger2只懂一点,不熟悉,只会到处复制粘贴。
到:熟悉Dagger2的使用方法,明白什么时候用interface,什么时候用abstract class,什么时候用@JvmStatic等等,能够看懂生成的代码,能分辨出Dagger2实现的好坏。
2018年5月18日更新:Moshi 1.6增加了Codegen的选项,可以取代Kotshi。原方案依旧可行。
之前用Gson序列化Kotlin的data class一直都没问题,但一天当data class中出现了默认参数时,问题就来了。
如果JSON中没有对应的Field,按道理Gson应该生成一个使用了默认参数的data class,但它没有,而且会无视Kotlin的不可null,直接生成一个null。
那换一个支持Kotlin的JSON库呗。这时Moshi就很厉害了,自带一个Kotlin的Adapter,用起来很舒服。但是在最后生成Release版本时,才发现安装包大了600+KB。原因是Moshi对Kotlin的支持使用了Kotlin的Reflection,这个就很占空间,虽然也有Kotlin Relection Lite这个轻量级版本,但目前并不支持。
所以,我在
把今年I/O的内容参加的差不多了,这里记录一些对我有用的东西。