addOnDrawListener 方法的兼容性问题


开通邮件订阅服务,有博客更新时将第一时间邮件通知您~

版权声明

本文是开源实验室原创文章,转载请以链接形式注明地址:https://kymjs.com/note/2018/09/20/01

对本知识点有任何问题,可加我的个人微信:kymjs123

当一个视图树绘制时调用OnDrawListeneronDraw()函数,经常用这个回调来监控 View 的变化。
但是这个方法在 Android8.0 之前有个坑:Viewattachwindow 之前调用 getViewTreeObserver().addOnDrawListener() 将不会进入回调。因为ViewTreeObservermerge()方法中没有处理OnDrawListener详见源码。

可是这个坑爹的问题,却在 Android 8.0 之后被偷偷的修复了,为了兼容问题,最好是使用 OnPreDrawListener 这个回调去替代 OnDrawListener。 最近就被这个问题给坑了。


欢迎您订阅我的付费文章专栏:包含更多有深度技术文章,与未来方向认知。

请帮忙转发一下本文吧~