项目使用 ‘me.yokeyword:fragmentation:1.3.6’ 进行界面开发。
在 Android 5版本上出现界面无法更新的问题,具体现象是:
1、列表数据加载之后页面看不到数据,但是点击等事件有响应,从其他界面返回,数据会显示出来。
2、输入框输入内容,看不到内容,但是在退出界面/从其他界面返回时,可以看到。
3、界面滚动无反应。
分析:
都是界面没有实时更新,但是数据和界面其实都是存在的,只是设备没有显示出来。
1、考虑是否是界面过于复杂,设备无法刷新的问题。单独新建一个界面,只有输入框,现象依旧。
2、考虑跟系统相关,只有6.0以下出现问题。而且其他项目同样架构并无问题
3、考虑项目某些设置存在问题。对比两个项目,发现问题项目的主activity关闭了硬件加速,去掉,再测试,问题解决。
总结:fragmentation库在Android6.0以下的设备上,依赖硬件加速,所以不能关闭硬件加速。具体代码,删除:【android:hardwareAccelerated=“false”】