1.ListView getChildAt(index),有可能返回null,这是因为这个方法只能返回当前屏幕 可视范围内的view,比如屏幕只能容下10个,则getChildAt (0)到getChildAt (9)都是 可用的,大于9就会返回空值。如果我取第10个的话就null了。
2.Fragment getView() 有时可能为空,这是就要看看你调用的时机是否正确了,其他操作都正常情况下,调用时机一定要在onViewCreate以后才行。
3.WebView要慎用,反复进入退去,内存很容易泄露。
4.TextView 设置尾部省略后,有时会发现当内容超出显示范围后,直接截断了,也没有出现预期的“”...“”省略号,这时看看内容的长度是否恰好比显示范围大一个字符,如果是的话,这时是不显示的。貌似这时系统的一个bug。解决方法:显示内容时,再最末尾加个空格即可。
5.调试的时候,发现有的设备Log.d,debug级别的log无法输出,确保代码没问题情况下,可能是此设备禁止了debug级别的log输出,打开即可。各个设备打开方式不一,自行查找。
6.View的层级不易过多,也不要过度绘制。
7.Android 4.0以后,Manifest中静态注册的广播,程序安装后必须启动过一次,才能接收到。
8.一个AS工程,module不能太多,这样会影响编译速度,可以将不是常变动的module打包程aar,主工程依赖aar可以大大提高编译速度。
9.long类型的变量声明时最好直接定义好,比如long a = 100l;因为如果不加long类型的后缀,有时有可能会出现负值。
持续更新。。。
网友评论