作家
登录

Android View绘制的三大流程

作者: 来源: 2017-08-22 11:05:27 阅读 我要评论

  •                         (ArrayList<OnLayoutChangeListener>)li.mOnLayoutChangeListeners.clone(); 
  •                 int numListeners = listenersCopy.size(); 
  •                 for (int i = 0; i < numListeners; ++i) { 
  •                     listenersCopy.get(i).onLayoutChange(this, l, t, r, b, oldL, oldT, oldR, oldB); 
  •                 } 
  •             } 
  •         } 
  •  
  •         mPrivateFlags &= ~PFLAG_FORCE_LAYOUT; 
  •         mPrivateFlags3 |= PFLAG3_IS_LAID_OUT; 
  •     }  
  • 因微信字数限制,请点击原文链接查看完全内容

    总结

    抛开一切,仅站在WindowManagerService的角度上,Android的界面就是由一个个Window层叠展示的,而Window又是一个抽象的概念,它并不是实际存在的,它是以View的情势存在,这个View就是DecorView。

    到这里,View的measure、layout、draw三大年夜流程就说完了,这里做一下总结:

    • 如不蚜?鲈定义ViewGroup的话,须要重写onMeasure办法,在onMeasure办法琅绫擎遍历测量子元素,同理onLayout办法也是一样,最后实现onDraw办法绘制本身;
    • 如不雅自定义View的话,则须要大年夜写onMeasure办法,处理wrap_content的情况,不须要处理onLayout,最后实现onDraw办法绘制本身; 

    【编辑推荐】

    1. Android 7.0动态权限大年夜总结
    2. 在Android上实现HttpServer
    3. 高通:Android手机用户来岁将用上刷脸功能
    4. 已经2017年了,Android手机还须要root吗?
    5. Android 8.0 正式版将要宣布 谷歌还要建超人模型
    【义务编辑:庞桂玉 TEL:(010)68476606】

    Java



      推荐阅读

      两种曲线点抽稀算法-Python实现 附代码

    在处理矢量化数据时,记录中往往话苄很多反复数据,对进一步数据处理带来诸多不便。多余的数据一方面浪费了较多的存储空间,另一方面造成所要表达的图形不但滑或不相符标准。是以要经由过程某种规矩,在包管矢量曲线>>>详细阅读


    本文标题:Android View绘制的三大流程

    地址:http://www.17bianji.com/lsqh/36843.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)