【Android】在渲染生效前提前测量View大小

问题

Android的UI机制是基于MessageHandler的,View并不会在添加后就会被立刻测量渲染出来

但有时我们需要动态去计算布局,希望在添加View时,就能知道这个View的高度

方法

此时,我们可以手动去调用measure方法,来测量View大小

measure方法需要提供两个spec,我们根据实际情况自己去创建

代码
kotlin 复制代码
view.measure(
  MeasureSpec.makeMeasureSpec(width, MeasureSpec.EXACTLY),
  MeasureSpec.makeMeasureSpec(height, MeasureSpec.EXACTLY)
)
// optional
view.layout(0, 0, view.measuredWidth, view.measuredHeight)
view.requestLayout()
view.invalidate()
相关推荐
用户483916550839 分钟前
AI代码分析 - LocklessQueue
android
峥嵘life19 分钟前
Android 无线投屏相关知识介绍
android·学习
常利兵23 分钟前
安卓开发避坑指南:全局异常捕获与优雅处理实战
android·服务器·php
studyForMokey32 分钟前
【Android面试】OkHttp & Retrofit 专题
android·okhttp·面试
恋猫de小郭32 分钟前
抖音“极客”适配 Android 5 ~ 9 等老机型技术解读,都是骚操作
android·前端·flutter
黄林晴36 分钟前
Android Studio Panda 4 来了!AGP 9.2 升级,同步稳定性大幅修复
android·android studio
默 语36 分钟前
OpenClaw“养龙虾“热潮降温的深层解析:从技术狂欢到理性回归
android·开发语言·kotlin
xiaoshiquan12061 小时前
Android16系统内容全屏,状态栏和导航栏透明
android
Carson带你学Android1 小时前
编译更快、语法更香?一文看懂 Kotlin 2.3.20 的 6 大核心演进
android·kotlin
jwn9991 小时前
Laravel3.x经典特性全解析
android