美文网首页
android View 相关

android View 相关

作者: Herlo | 来源:发表于2019-03-04 21:48 被阅读0次

    view 的绘制流程 onmeasure (),onlayout(),ondraw(),

    当前activity必须onpause()! 下一个activity才能onresume()!
    可以用以下几种方法计算view的宽高
    1、待activity界面完全展示出来再去调用getmeasureheight()和getmeasurewidth()方法获取
    2 、 使用ViewTreeObserver
    ViewTreeObserver作为View事件的观察者,可以通过View的getViewTreeObserver()方法来获得他的实例,注意并不是通过new关键字来创建的,当视图树中全局布局或者视图树中某一个视图的可视状态发生变化的时候,会调用回调接口类onGlobalLayoutListener里面的onGlobalLayout方法,这样的话,我们就可以在onGlobalLayout里面来获取View的宽高
    当然你也可以使用ViewTreeObserver里面的其他监听方法,比如OnPreDrawListener,这会在你执行onDraw方法之前进行调用,在View视图的绘制中执行onDraw之前已经执行过onMeasure以及onLayout了,所以这时候是一定可以获取到宽高的;

    相关文章

      网友评论

          本文标题:android View 相关

          本文链接:https://www.haomeiwen.com/subject/rlbwuqtx.html