关于RelativeLayout和LinearLayout及FrameLayout性能分析

RelativeLayout和LinearLayout及FrameLayout性能分析

推荐:

作者:逆流的鱼yuiop

来源:CSDN

原文:https://blog.csdn.net/hejjunlin/article/details/51159419

版权声明:本文为博主原创文章,转载请附上博文链接!

如下:

View的一些基本工作原理

先通过几个问题,简单的了解写android中View的工作原理吧。

View是什么?

简单来说,View是Android系统在屏幕上的视觉呈现,也就是说你在手机屏幕上看到的东西都是View。

View是怎么绘制出来的?

View的绘制流程是从ViewRoot的performTraversals()方法开始,依次经过measure(),layout()和draw()三个过程才最终将一个View绘制出来。

View是怎么呈现在界面上的?

Android中的视图都是通过Window来呈现的,不管Activity、Dialog还是Toast它们都有一个Window,然后通过WindowManager来管理View。Window和顶级View——DecorView的通信是依赖ViewRoot完成的。

View和ViewGroup什么区别?

不管简单的Button和TextView还是复杂的RelativeLayout和ListView,他们的共同基类都是View。所以说,View是一种界面层控件的抽象,他代表了一个控件。那ViewGroup是什么东西,它可以被翻译成控件组,即一组View。ViewGroup也是继承View,这就意味着View本身可以是单个控件,也可以是多个控件组成的控件组。根据这个理论,Button显然是个View,而RelativeLayout不但是一个View还可以是一个ViewGroup,而ViewGroup内部是可以有子View的,这个子View同样也可能是ViewGroup,以此类推。

作者:逆流的鱼yuiop

来源:CSDN

原文:https://blog.csdn.net/hejjunlin/article/details/51159419

版权声明:本文为博主原创文章,转载请附上博文链接!

    原文作者:行者_zm
    原文地址: https://www.jianshu.com/p/d33551a6dbc9
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞