onCreate中的RelativeLayout高度为0

时间:2012-07-26 08:23:46

标签: android android-layout

我正在尝试动态调整行的高度,具体取决于(屏幕高度 - 我的布局高度)/ list.size。

不幸的是,在onCreate方法中,布局高度返回null(当我在on click侦听器中调用它时不是这样)。

我可以使用另一种方法吗? 我想在运行时使用高度和宽度。

帮助我......

提前致谢

1 个答案:

答案 0 :(得分:1)

在onCreate视图中没有放置,所以它总是返回null,你需要设置GlobalLayoutListener,然后在侦听器的onGlobalLayout方法中你可以获取视图/布局的实际尺寸。

ViewTreeObserver observer = view.getViewTreeObserver();
observer.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
    @Override
    public void onGlobalLayout() {
        //in here, place the code that requires you to know the dimensions.


         //this will be called as the layout is finished, prior to displaying.
    }
}