性能优化模块预加载思路
来源:互联网 发布:路易斯康 知乎 编辑:程序博客网 时间:2024/06/05 19:37
在实际的开放中,有时候我门在开发的时候,会初始化就加载布局,
例如代码如下:
private void initHolder() { if (isContextNull()) { return; } final IRoomList detailCacheBean = getCacheBean(); if (detailCacheBean == null ) { return; } if (!(detailCacheBean instanceof HotelDetailRoomList)){ return; } mHotelSharePeacockHolder = new HotelSharePeacockHolder(); int shareLayoutID = R.layout.hotel_detail_share_peacock_layout; ViewGroup shareView = (ViewGroup) View.inflate(getTargetActivity(), shareLayoutID, null); }
我在写代码的时候,每次都需要去加载布局,这样会存在一些性能的损耗,最好的加载时机放在 需要加载该模块的时候去加载,那么对于我门公司的加载机制,如下
@Override protected void createAdapterInfo() { if (isContextNull()) { return; } mAdapterInfo = AdapterInfo.buildEmptyAdapterInfo(getTargetActivity(), new AdapterInfo.HeaderCreator("Test") { @Override public View onCreateHeaderView() { View header = mHotelSharePeacockHolder.getView(); if(header == null){ header = View.inflate(getTargetActivity(), R.layout.hotel_detail_share_peacock_layout, null); mHotelSharePeacockHolder.setView(header); } header.setTag("header"); return header; } @Override public void handleHeader(AdapterInfo adapterInfo) { final IRoomList detailCacheBean = getCacheBean(); if (detailCacheBean == null || mHotelSharePeacockHolder.getView() == null) { return; } mHotelSharePeacockHolder.refreshView(); } @Override public View onCreatePinnedHeaderView() { return null; } }, false); mAdapterInfo.mShowHeaderWhenEmpty = false; }
每个公司的实现方式不变,其实现在的代码业务页越来越繁杂,每个一步的性能优化就能起到逐步优化的效果
阅读全文
0 0
- 性能优化模块预加载思路
- 系统性能优化思路
- 统计性能优化思路
- 性能优化思路
- jetty性能优化思路整理
- jetty性能优化思路整理
- Web应用性能优化思路
- listview加载性能优化
- listview加载性能优化
- 加载性能优化ViewHolder
- Javascript 加载性能优化
- JS加载性能优化
- Javascript 加载性能优化
- UIImage 加载性能优化
- 通话模块性能优化分析
- 总体性能——加载模块性能
- 总体性能——加载模块性能
- 系统性能优化分析—总体思路
- 模仿,超越
- C++11:模板的改进
- traceroute程序-c语言实现
- python
- CIDR的IP地址的表示与划分方法
- 性能优化模块预加载思路
- 51Nod 1073 约瑟夫环
- HTTP协议简要介绍
- 关于C++中的友元函数的总结
- MySQL架构与innodb引擎
- no output in console for unittests in pycharm 2017
- F
- 新一代人工智能发展规划发布
- Tomcat系列—基于域名的虚拟主机配置