"Android PDF知识大全-2019百度Android面试题详解"
需积分: 9 135 浏览量
更新于2024-01-14
收藏 25.45MB PDF 举报
《Android_PDF知识大全.pdf》是一本关于Android PDF相关知识的大全,可以帮助开发者全面了解Android PDF开发的技术要点和细节。本书主要介绍了Android中PDF的绘制流程和机制,以及View的绘制流程和机制。
在Android中,当一个Activity接收到焦点时,它会被请求进行布局绘制,这个请求由Android系统的Framework来处理。绘制的过程从根节点开始,对整个布局树进行measure(测量)和draw(绘制)操作。整个View树的绘制流程可以在ViewRoot.java类的performTraversals()函数中找到,该函数的主要工作包括判断是否需要重新计算视图大小、是否需要重新安置视图位置,以及是否需要进行重绘。
在View的绘制流程中,需要注意的是,用户主动调用request操作只会触发measure和layout过程,而不会触发draw过程。
在概念方面,measure和layout是两个重要的步骤。整体上看,这两个步骤的执行是有序的,从父视图到子视图进行遍历,每一个ViewGroup负责测绘它所有的子视图,而最底层的View则负责测绘自身。
具体而言,measure过程主要是为了确定视图在布局中的尺寸,包括测量视图的宽度和高度。在measure过程中,会根据视图的LayoutParams参数以及父视图可用的空间来进行测量。measure过程的实现主要是通过MeasureSpec来完成的,MeasureSpec会根据视图的LayoutParams和父视图的MeasureSpec来计算一个合适的大小。
layout过程主要是为了确定视图在布局中的位置,即确定视图的左上角坐标。在layout过程中,会根据视图的测量结果以及父视图的规则来计算最终的位置。layout过程的实现主要通过ViewGroup的onLayout()方法来完成,该方法会遍历所有子视图,并根据子视图的测量结果来确定子视图的位置。
除了measure和layout过程外,绘制流程还包括draw过程。draw过程主要是为了将视图绘制到屏幕上,即绘制视图的内容。在draw过程中,会调用视图的onDraw()方法来进行绘制操作。onDraw()方法中会使用Canvas对象来进行绘制,可以通过绘制图形、绘制文本、绘制位图等来展示视图的内容。
综上所述,Android的View绘制流程是一个有序的过程,包括measure、layout和draw三个步骤。其中,measure过程用于确定视图在布局中的尺寸,layout过程用于确定视图在布局中的位置,draw过程用于将视图绘制到屏幕上。了解这些流程和机制对于Android开发者来说是非常重要的,可以帮助他们更好地理解和掌握View的绘制原理,从而提高开发效率和代码质量。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2020-03-25 上传
2013-04-22 上传
2021-09-23 上传
2021-10-02 上传
2021-11-24 上传
2021-09-30 上传
qq_33102979
- 粉丝: 0
- 资源: 1
最新资源
- 深入浅出:自定义 Grunt 任务的实践指南
- 网络物理突变工具的多点路径规划实现与分析
- multifeed: 实现多作者间的超核心共享与同步技术
- C++商品交易系统实习项目详细要求
- macOS系统Python模块whl包安装教程
- 掌握fullstackJS:构建React框架与快速开发应用
- React-Purify: 实现React组件纯净方法的工具介绍
- deck.js:构建现代HTML演示的JavaScript库
- nunn:现代C++17实现的机器学习库开源项目
- Python安装包 Acquisition-4.12-cp35-cp35m-win_amd64.whl.zip 使用说明
- Amaranthus-tuberculatus基因组分析脚本集
- Ubuntu 12.04下Realtek RTL8821AE驱动的向后移植指南
- 掌握Jest环境下的最新jsdom功能
- CAGI Toolkit:开源Asterisk PBX的AGI应用开发
- MyDropDemo: 体验QGraphicsView的拖放功能
- 远程FPGA平台上的Quartus II17.1 LCD色块闪烁现象解析