Hack 15 移除背景提升activity的启动速度
来源:互联网 发布:淘宝返利网是骗局吗 编辑:程序博客网 时间:2024/06/07 05:22
系统绘制UI布局是耗时的操作,每个view都要耗时,在满足要求前提下,当然view越少越好,节点越少越好,通过系统自带的层级观察器HierarchyViewer,检查我们的view树,去掉比必要的节点,可以提升activity的加载速度。
以Android4,.4 SDK为例
一.新建一个默认的Android应用程序,启动运行
用层级观察器查看布局结构:
buju带图标那一栏就是标题栏,首先移除标题栏来减少节点,
在自定义主题中不设标题
在res/values/styles.xml文件中加入:
<style name="Theme.NoBackgroud" parent="android:Theme"> <item name="android:windowNoTitle">true</item> </style>AndroidManifest.xml文件中引入自定义主题:
设置 <applacation>标签中修改主题为 android:theme="@style/Theme.NoBackgroud"
二.去掉主题栏后:
运行:
用层级观察器查看布局结构:
可以看到view的ActionBarContainer节点被移除,view树变简单.
DecorView是视图树的根节点,默认状态下,框架层会以默认背景色填充窗口,DecorView就是装载背景色的视图,因此,如果自定义背景色,那么DecorView再绘制就是浪费时间,也就没有必要设置,可以移除默认背景,以加快Activity的启动时间。
在res/values/styles.xml文件中加入:
在不设主题的基础上,加入背景为null.
<style name="Theme.NoBackgroud" parent="android:Theme"> <item name="android:windowNoTitle">true</item> <item name="android:windowBackground">@null</item> </style>AndroidManifest.xml文件中:
设置 <applacation>标签中修改主题为 android:theme="@style/Theme.NoBackgroud"
三.去掉背景:
运行:
用层级观察器查看布局结构:
当然 theme也可以在具体的<Activity>标签中设定
参考代码:
Android去掉标题栏
http://download.csdn.net/detail/xiaobijia/8101507
- Hack 15 移除背景提升activity的启动速度
- Hack 15 移除背景提升activity的启动速度
- 移除背景以提升Activity启动速度
- 提升Powershell的启动速度
- 提升Powershell的启动速度
- 加快Activity的启动速度
- 移除View的背景
- Visual Studio“15”启动速度提升
- App提升启动速度
- myeclipse全面提升启动速度
- 提升Android app启动速度
- searchBar 背景框的移除
- 提升应用的启动速度 和 splash页面的设计
- 在Hadoop中提升task的启动速度
- 在Hadoop中提升task的启动速度
- App优化之提升你的App启动速度
- Android App优化之提升你的App启动速度
- 包管理器移除一个activity后,ActivityManager自动启动HOME界面的问题
- pig代码格式上小注意
- jquery对象与DOM对象
- 这是一个ibatIS xml文件
- 研究WIN/Linux下多线程读写文件问题
- php插件开发
- Hack 15 移除背景提升activity的启动速度
- windows内核通信
- iOS 国际化介绍
- Android调用系统内部的下载程序
- 分批存储文件,合并文件
- SurfaceView框架
- 【LeetCode】3Sum
- FPGA之基于FPGA的SPARK多核处理器设计(一)
- JAVA中只有值传递,没有引用传递!