gpt4 book ai didi

Android - 获取设置为 wrap_content 的按钮的宽度

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:01:06 24 4
gpt4 key购买 nike

我正在尝试获取 android:layout_width 设置为 wrap_content 的按钮的宽度。当我尝试在 onCreate() 中使用 getMeasuredWidth() 执行此操作时,我得到的值为零,因为我认为 View 尚未准备好。

那我应该什么时候得到宽度呢?当 View 完成初始化时,有没有我可以 Hook 的监听器?

最佳答案

您可以将树观察器添加到布局中。这应该返回正确的宽度和高度。 onCreate 在 subview 的布局完成之前被调用。所以宽度和高度还没有计算出来。获取高度和宽度。把它放在 onCreate 方法上

LinearLayout layout = (LinearLayout)findViewById(R.id.YOUD VIEW ID); 
ViewTreeObserver vto = layout.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
this.layout.getViewTreeObserver().removeGlobalOnLayoutListener(this);
int width = layout.getMeasuredWidth();
int height = layout.getMeasuredHeight();

}
});

关于Android - 获取设置为 wrap_content 的按钮的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7776042/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com