android在onCreate方法中获取可绘制区域

时间:2011-09-03 00:06:59

标签: android layout dimensions

如果我在高度和宽度上有一个fill_parent的布局,有没有办法在onCreate方法中获得他的高度和宽度?如果没有,当他的尺寸可用时?我需要这个,因为我需要在运行时添加一些视图,我需要知道有多少视图填充布局。

2 个答案:

答案 0 :(得分:3)

你可以这样做: 假设您在onCreate方法

中具有布局视图
     layout.post(new Runnable() {
        @Override
          public void run() {
            height= getHeight();
            width=getWidth();        
            //pupulate other views now that you know the parent size     
            }
        }
  });

答案 1 :(得分:2)

您可以使用onSizeChanged方法获取计算后的信息,但这也可能有助于至少获得显示的尺寸。

Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay(); 
int width = display.getWidth(); 

您可能会觉得这很有用:

when is onSizeChanged() called?