您的位置:首页 > 产品设计 > UI/UE

提高android应用ui运行效率

2015-07-31 16:23 501 查看
大家可以先参考一下这边文章,先发开文章里面提到的overdraw功能,这样你可以看到屏幕的overdraw情况
http://hukai.me/android-performance-render/
由于我们公司奇葩的设计(有一个接近全屏的drawerlayout!!!内容还和drawerlayout下的内容一样!!!只是排版不用!!!),我们的app一直都十分的卡!!!

打开app一看,吓尿了,几乎整个屏幕都是红的!也就是overdraw的情况十分十分严重!!

原来即使是躲在drawerlayout底下,下面的内容仍然是会被绘制的。

尤其是在android 5.0新组件的运用下(虽然我还没用到),在多个layout叠加的情况下,可以通过将下层的layout.setvisibility(View.GONE)让它们暂时消失,等再次出现的时候再让他们visible。

另外,在红色海洋中,我发现一个神奇的现象——fragment并没有死去!

我们在layout中有一个fragment,每次都是调用fragmentManager.replace更换fragment

通过别人的文章发现,这样的话只是将新的fragment覆盖在旧fragment上面,点击新fragment的空白区域时甚至可以点到旧fragment的按钮。

正确的做法应该是在layout中使用framelayout,每次通过replace(R.id.framelayout_name,fragment)更新fragment

这样就能让旧fragment彻底消失。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: