Android官方开发文档Training系列课程中文版:布局性能优化之按需加载View

原文地址:http://android.xsoftlab.net/training/improving-layouts/loading-ondemand.html

有时应用程序中会有一些很少用到的复杂布局。在需要它们的时候再加载可以降低内存的消耗,同时也可以加快界面的渲染速度。

定义ViewStub

ViewStub是一个轻量级的View,它没有高宽,也不会绘制任何东西。所以它的加载与卸载的成本很低。每个ViewStub都可以使用android:layout属性指定要加载的布局。

下面这个ViewStub用于一个半透明的ProgressBar的加载。它只有在新工作开始时才会显示。

<ViewStub
    android:id="@+id/stub_import"android:inflatedId="@+id/panel_import"android:layout="@layout/progress_overlay"android:layout_width="fill_parent"android:layout_height="wrap_content"android:layout_gravity="bottom" />

加载ViewStub

当需要加载由ViewStub所指定的布局时,可以使用setVisibility(View.VISIBLE)方法或者inflate()方法,两者效果相同。

((ViewStub) findViewById(R.id.stub_import)).setVisibility(View.VISIBLE);
// or
View importPanel = ((ViewStub) findViewById(R.id.stub_import)).inflate();

Note: inflate()方法会在加载完毕的时候返回一个View。所以不需要使用findViewById()来查找这个布局的Root View。

一旦ViewStub所托管的View被加载,那么ViewStub将不再是View层级的一部分。它会被所加载的布局替换,并且会将该布局的ID更改为ViewStub的android:inflatedId属性所指定的ID。

Note: ViewStub的缺点是:它当前并不支持要加载布局的root View为< merge/>标签。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/478847.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

千呼万唤始出来——GPT-3终于开源!

文 | 小戏编 | 小轶GPT3终于开源&#xff01;不过&#xff0c;不是官方开的&#xff08;别打我Eleuther AI推出的名为GPT-Neo的开源项目&#xff0c;于今晨4点于twitter正式宣布&#xff1a;已经开源了复现版GPT-3的模型参数&#xff08;1.3B和2.7B级别&#xff09;&#xff0c…

论文浅尝 - AAAI2020 | 迈向建立多语言义元知识库:用于 BabelNet Synsets 义元预测...

论文笔记整理&#xff1a;潘锐&#xff0c;天津大学硕士。来源&#xff1a;AAAI 2020链接&#xff1a;https://arxiv.org/pdf/1912.01795.pdf摘要义原被定义为人类语言的最小语义单位。义原知识库&#xff08;KBs&#xff09;是一种包含义原标注词汇的知识库&#xff0c;它已成…

达观数据:文档智能审阅系统

https://www.bilibili.com/video/BV1dk4y1y75W?fromsearch&seid10707410997793429063 文档智能审阅系统

美团外卖iOS多端复用的推动、支撑与思考

前言 美团外卖2013年11月开始起步&#xff0c;随后高速发展&#xff0c;不断刷新多项行业记录。截止至2018年5月19日&#xff0c;日订单量峰值已超过2000万&#xff0c;是全球规模最大的外卖平台。业务的快速发展对技术支撑提出了更高的要求。为线上用户提供高稳定的服务体验&a…

LeetCode 784. 字母大小写全排列(位运算回溯)

1. 题目 给定一个字符串S&#xff0c;通过将字符串S中的每个字母转变大小写&#xff0c;我们可以获得一个新的字符串。返回所有可能得到的字符串集合。 示例: 输入: S “a1b2” 输出: [“a1b2”, “a1B2”, “A1b2”, “A1B2”] 输入: S “3z4” 输出: [“3z4”, “3Z4”]…

Android官方开发文档Training系列课程中文版:布局性能优化之ListView的优化

原文地址&#xff1a;http://android.xsoftlab.net/training/improving-layouts/smooth-scrolling.html 想要让ListView滑动流畅的关键所在是减轻主线程的负担。要确保任何的磁盘访问、网络访问、或者SQL访问都是在单独的线程中执行的。如果要测试APP的状态&#xff0c;可以开…

论文浅尝 - WWW2020 | 从自然语言交互中提取开放意图

论文笔记整理&#xff1a;娄东方&#xff0c;浙江大学博士后&#xff0c;研究方向为事件抽取。Vedula N, Lipka N, Maneriker P, et al. Open Intent Extraction from Natural Language Interactions[C]//Proceedings of The Web Conference 2020. 2020: 2009-2020.来源&#x…

OCR数据处理(上篇)+OCR数据处理(下篇)

OCR数据处理&#xff08;上篇&#xff09;&#xff1a;https://mp.weixin.qq.com/s/u956SljZEvInqMQCCTcEkg OCR数据处理&#xff08;下篇&#xff09;&#xff1a;https://mp.weixin.qq.com/s/KWoh4pGapYh8S5T7VHNrTQ

深度学习在文本领域的应用

背景 近几年以深度学习技术为核心的人工智能得到广泛的关注&#xff0c;无论是学术界还是工业界&#xff0c;它们都把深度学习作为研究应用的焦点。而深度学习技术突飞猛进的发展离不开海量数据的积累、计算能力的提升和算法模型的改进。本文主要介绍深度学习技术在文本领域的应…

Android官方开发文档Training系列课程中文版:电池续航时间优化之监测电池电量及充电状态

原文地址&#xff1a;http://android.xsoftlab.net/training/monitoring-device-state/index.html 引言 作为一款优秀的APP应用&#xff0c;应该总是想方设法的降低电量的消耗。通过这节课的学习&#xff0c;你将有能力使APP可以基于设备的状态来调整APP的功能及行为。 我们…

LeetCode 1009. 十进制整数的反码(位运算)

1. 题目 每个非负整数 N 都有其二进制表示。例如&#xff0c; 5 可以被表示为二进制 “101”&#xff0c;11 可以用二进制 “1011” 表示&#xff0c;依此类推。注意&#xff0c;除 N 0 外&#xff0c;任何二进制表示中都不含前导零。 二进制的反码表示是将每个 1 改为 0 且…

新分类!全总结!最新Awesome-SLU-Survey资源库开源!

文 | 哈工大SCIR 覃立波、谢天宝等指导老师 | 哈工大SCIR 车万翔教授简介口语语言理解&#xff08;Spoken Language Understanding&#xff0c;SLU&#xff09;作为任务型对话系统的核心组件&#xff0c;目的是为了获取用户询问语句的框架语义表示&#xff08;semantics frame&…

技术实践 | 用 NetworkX + Gephi + Nebula Graph 分析权力的游戏人物关系(上篇)

本文转载自公众号&#xff1a;Nebula Graph Community 。我们都知道《权利的游戏》在全世界都很多忠实的粉丝&#xff0c;除去你永远不知道剧情下一秒谁会挂这种意外“惊喜”&#xff0c;当中复杂交错的人物关系也是它火爆的原因之一&#xff0c;而本文介绍如何通过 NetworkX 访…

python将pdf中的每一页转化为图片保存

import PyPDF4 import pikepdf import fitz #对pdf文件进行简单的解密 def jiemi(pdfpath):new_pdfpath pdfpath[:-4] _new pdfpath[-4:]fp open(pdfpath, "rb")pdfFile PyPDF4.pdf.PdfFileReader(fp)# pdf 解密if pdfFile.isEncrypted:pdf pikepdf.open(pdfp…

美团外卖Android Crash治理之路

Crash率是衡量一个App好坏的重要指标之一&#xff0c;如果你忽略了它的存在&#xff0c;它就会愈演愈烈&#xff0c;最后造成大量用户的流失&#xff0c;进而给公司带来无法估量的损失。本文讲述美团外卖Android客户端团队在将App的Crash率从千分之三做到万分之二过程中所做的大…

全栈深度学习第7期: 研究方向这么多,哪些是有有趣又潜力的呢?

一起追剧鸭简介Berkeley全栈深度学习追剧计划是由夕小瑶的卖萌屋发起的优质公开课打卡项目&#xff0c;通过微信群为同期追剧的小伙伴提供交流平台。关于该计划的详请见这里。Berkeley深度学习追剧群目前已有1000小伙伴加入&#xff0c;公众号后台回复口令 深度学习追剧 入群。…

会议交流 | 人工智能与机器学习创新峰会 - 知识图谱与图神经网络分会

人工智能与机器学习创新峰会力邀 HBAT 等大厂资深研发专家做分享和技术展望时间&#xff1a;9月4日下午1:30地点&#xff1a;浦东海神诺富特大酒店OpenKG开放知识图谱&#xff08;简称 OpenKG&#xff09;旨在促进中文知识图谱数据的开放与互联&#xff0c;促进知识图谱和语义技…

Android官方开发文档Training系列课程中文版:电池续航时间优化之检查与监测坞的状态与类型

原文地址&#xff1a;http://android.xsoftlab.net/training/monitoring-device-state/docking-monitoring.html Android设备可以被放置在若干种不同的扩展坞中。这些扩展坞包括汽车坞与家庭坞以及数字与模拟坞。其中坞的状态与充电状态非常相近&#xff0c;因为这些坞也提供了…

OpenCV和tesseract-ocr的安装及使用

tesseract-ocr的安装及使用&#xff1a;https://blog.csdn.net/qq_37193537/article/details/81335165 三步解决python PermissionError: [WinError 5]拒绝访问的情况&#xff1a; https://www.jb51.net/article/185218.html https://www.pianshen.com/article/43251972054/ …

LeetCode 1046. 最后一块石头的重量(priority_queue 堆)

1. 题目 有一堆石头&#xff0c;每块石头的重量都是正整数。 每一回合&#xff0c;从中选出两块最重的石头&#xff0c;然后将它们一起粉碎。假设石头的重量分别为 x 和 y&#xff0c;且 x < y。那么粉碎的可能结果如下&#xff1a; 如果 x y&#xff0c;那么两块石头都…