android的ui底层是用cpu绘图的还是gpu绘图的呢

万物复苏 阳春三月 2024-05-30 22:16:49
最佳回答
安卓有2种绘制模型:一.软件绘制模型,这里由cpu主导绘图,视图按照以下2个步骤绘图。让视图结构(view hierarchy)失效。绘制整个视图结构。当应用程序需要更新它的部分ui时,都会调用内容发生改变的view对象的invalidate()方法。无效(invalidation)消息请求会在view对象层次结构中传递,以便计算出需要重绘的屏幕区域(脏区)。然后,android系统会在view层次结构中绘制所有的跟脏区相交的区域。但是,这种方法有两个缺点:1. 绘制了不需要重绘的视图(与脏区域相交的区域)2. 掩盖了一些应用的bug(由于会重绘与脏区域相交的区域)注意:在view对象的属性发生变化时,如背景色或textview对象中的文本等,android系统会自动的调用该view对象的invalidate()方法。二.硬件加速绘制模型,这里由gpu主导绘图,视图按照以下3个步骤绘图。让视图结构失效。记录和更新显示列表(d**play l**t)。绘制显示列表。  这种模式下,android系统依然会使用invalidate()方法和draw()方法来请求屏幕更新和展现view对象。但android系统并不是立即执行绘制命令,而是首先把这些view的绘制函数作为绘制指令记录一个显示列表中,然后再读取显示列表中的绘制指令调用opengl相关函数完成实际绘制。另一个优化是,android系统只需要针对由invalidate()方法调用所标记的view对象的脏区进行记录和更新显示列表。没有失效的view对象就简单重用先前显示列表记录的绘制指令来进行简单的重绘工作。  使用显示列表的目的是,把视图的各种绘制函数翻译成绘制指令保存起来,对于没有发生改变的视图把原先保存的操作指令重新读取出来重放一次就可以了,提高了视图的显示速度。而对于需要重绘的view,则更新显示列表,然后再调用opengl完成绘制。  在这种绘制模型下,我们不能依赖一个视图与脏区(dirty region)相交而导致它的draw()方法被自动调用,所以必须要手动调用该视图的invalidate()方法去更新显示列表。如果忘记这么做可能导致视图在改变后不会发生变化。 20210311
汇率兑换计算器

类似问答
  • 如何使用 excel 绘制甘特图?
    • 2024-05-30 22:16:53
    • 提问者: 未知
    一周君整理了一些关于excel中甘特图的相关知识,第一部分包括介绍基础甘特图的制作与技巧,第二部分包括进阶的甘特...接下来我们来一步一步学习如何绘制出一个这样的动态甘特...
  • 如何用流程图软件绘制漂亮的流程图
    • 2024-05-30 01:24:25
    • 提问者: 未知
    1既然需要借助软件,那么首先我们当然应该下载一款能够绘制流程图的软件,这里以亿图图示为例,下载之后进行安装,整个过程比较快,几分钟的样子。2然后打开软件,新建一个流程图,如果新手刚开始不知道从哪里下手的话建议可以从软件的流程图模板中选一个好看的,然后慢慢借鉴,这样也能不知不觉提高自己的审美水平。3创建之后进入画布,可以看到左侧有很多的基础流程图符号,我们可以直接用鼠标将这些符号拖到画布中来进行绘制...
  • cad绘图规范
    • 2024-05-30 10:06:18
    • 提问者: 未知
    在auto cad的学程中,学会看命令提示行是最的是了解掌握cad的及应用发放的重要渠 比如,你点击窗口左面的图标,在窗口的最下面命令栏一行就会出现该图标的相对命令,如果你需要连续使用这项功能,只需要按回重复按下回车键。 记住一些常用到的快捷命令,也就是通过鼠标操作时出现在命令栏里的对应的英文单词,通常取开头的1-3个字母作为快捷命令。cad的基本操作姿势是一只手操作键盘,另一只手控制...
  • 如何对d3.js绘制的地图分块
    • 2024-05-30 15:43:18
    • 提问者: 未知
    可以在某个dom元素后面,或者通过css属性控制具体位置,主要通过left、确认div添加位置.createelement(;div;); 21、利用js代码首先创建一个div,document;top等属性控制。 3
  • eh-p**的绘制
    • 2024-05-30 16:05:19
    • 提问者: 未知
    eh-p**是以eh为纵坐标,211**h为横坐标,表示在一定的5261eh值和ph值范围内,各种溶解组4102分及固体组分稳定场的图解1653,因此也称为稳定场图。应该注意的是,eh-p**只是表示在标准状态下,氧化还原反应达到平衡状态时,水溶液中各种溶解组分及固体的稳定场,而天然地下水系统通常都偏离...
  • 绘图仪和打印机的区别
    • 2024-05-30 02:00:46
    • 提问者: 未知
    绘图仪:能按照人们要求自动绘制图形的设备。它可将计算机的输出信息以图形的形式输出。主要可绘制各种管理图表和统计图、大地测量图、建筑设计图、电路布线图、各种机械图与计算机辅助设计图等。打印机(printer) 是计算机的输出设备之一,用于将计算机处理结果打印在相关介质上。衡量打印机好坏的指标有三项:打印分辨率,打印速度和噪声。 打印机的种类很多,按打印元件对纸是否有击打动作,分击打式打印机与。按打印...
  • 柱状图怎么绘制
    • 2024-05-30 16:58:28
    • 提问者: 未知
    1方法一:使用word文档,点开word菜单“插入”选项卡里的“图表”。2找到柱状图并插入。3然后在表格里修改数值完成绘制即可。4方法二:使用亿图在线,首先搜索亿图在线,**开始作图。5选择图表类型,再找到柱状图模板。6选择任一模板并打开插入。7选择柱状图后可以快捷修改数值。8绘图完成后可以导出图片或其他格式。end
  • 什么是现状地形测绘图
    • 2024-05-30 22:36:13
    • 提问者: 未知
    不论是地形起伏变化的山区,还是河流湖塘水网密集的水乡平原,图上各种各样的地貌和地物符号都准确地反映了地面的实际情况。就是地表起伏形态和地物位置、形状在水平面上的投影图。例如:
  • python如何绘制k线图?
    • 2024-05-30 04:05:59
    • 提问者: 未知
    如何用matplotlib或者pyqtgraph实现k线图,半个月百度无果,实现鼠标停在线上呈现具体数据,第一张图是我…
  • 有关黑马手绘图片配什么图案好看呢?
    • 2024-05-30 21:12:35
    • 提问者: 未知
    主要看你要放在什么地方,如果是办公室里个人建议配山水,寓意气势磅礴的含义,挂在家里可以配上古装人物和雪景,有一种超凡脱俗的感觉。
汇率兑换计算器

热门推荐
热门问答
最新问答
推荐问答
新手帮助
常见问题
房贷计算器-九子财经 | 备案号: 桂ICP备19010581号-1 商务联系 企鹅:2790-680461

特别声明:本网为公益网站,人人都可发布,所有内容为会员自行上传发布",本站不承担任何法律责任,如内容有该作者著作权或违规内容,请联系我们清空删除。