gpt4 book ai didi

android - getLayoutParams 返回空值?

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

我创建了一个扩展 View 的类:

public class BoardView extends View  {

并且我在应用程序的 main.xml 文件中指定了 BoardView 的宽度和高度:

  <mypackage.BoardView
android:id="@+id/board"
android:layout_width="270px"
android:layout_height="270px" />

我正在尝试从 BoardView 的构造函数调用的函数中获取宽度和高度。这是我正在做的:

ViewGroup.LayoutParams p = this.getLayoutParams();
int h = p.height;

但是 getLayoutParams 总是返回 null。知道为什么这不起作用吗?

最佳答案

将 View 添加到其父 View 后,布局参数可用。尝试将代码从 View 构造函数移动到 onAttachedToWindow(),因为 getLayoutParams() 不会在那里返回 null

@Override
protected void onAttachedToWindow() {
super.onAttachedToWindow();
assert getLayoutParams() != null;
}

关于android - getLayoutParams 返回空值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2061007/

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