-1

我定义了以下布局:

<LinearLayout>
  <TextView />
  <RelativeLayout>
     <TextView>
     <Button>
     <Button>
  </RelativeLayout>
<LinearLayout>

现在我想获得 RelativeLayout 的高度(我想以编程方式指定其子项的高度):

View rel = findViewById(R.id.RelativeLayout01);
int width = rel.getWidth();
int height = rel.getHeight();

但是size returned is 0. 我如何获得 RelativeLayout 的大小(它主要是上面的伪代码,但两个布局在 xml 中都有一个“fill_parent”的高度/宽度)

4

1 回答 1

4

如何获取 RelativeLayout 的大小

你的代码可能没问题,但时间不对。您可能正在执行该代码onCreate(),这还为时过早,因为小部件尚未在屏幕上布置。

官方的回答是让你扩展RelativeLayout(或者,也许,ViewGroup)和实现你自己的布局规则,使用measure()and layout()

于 2010-09-18T14:53:20.573 回答