首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Activity.onCreate()中的setContentView()之后,Android什么时候会第一次调用View.onMeasure()?

在Activity.onCreate()中的setContentView()之后,Android会在下一次UI线程的循环中第一次调用View.onMeasure()。这是因为在Activity的生命周期中,setContentView()方法会将布局文件解析成View对象,并将其添加到Activity的视图层级中。但是,此时View还没有被测量,即还没有确定每个View的大小和位置。因此,Android会在下一次UI线程的循环中进行测量操作,即调用View.onMeasure()方法来测量每个View的大小和位置。这样才能确保在后续的布局和绘制过程中,每个View都能正确地显示在屏幕上。

在调用View.onMeasure()之后,Android会根据测量结果进行布局和绘制操作。首先,会调用View.onLayout()方法来确定每个View的位置。然后,会调用View.onDraw()方法来绘制每个View的内容。

需要注意的是,如果在Activity.onCreate()中使用了自定义的View,并且该View重写了onMeasure()方法,那么第一次调用View.onMeasure()会在setContentView()之后立即发生。这是因为自定义View的测量过程需要在布局解析之前完成。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的视频

领券