2012-12-02 43 views

回答

-2

给一个ID,你的主要布局元素:

<LinearLayout id="myLayout"> 
    ... 
</LinearLayout> 

setContentView()后,然后得到它的高度:

View myLayout = (View) findViewById(R.id.myLayout); 
int height = myLayout.getHeight(); 

另见this question获取更多信息。

-1

myLayout.getHeight();如果你真的有兴趣知道myLayout.getHeight(),那么你可能希望在视图显示在屏幕上之后检查它,否则它将返回视图的实际可见高度,只有在它显示在屏幕上之前它才会是0. 屏幕

如果您想知道屏幕的高度/宽度,那么您可以考虑使用以下代码: DisplayMetrics dm = new DisplayMetrics(); getWindowManager()。getDefaultDisplay()。getMetrics(dm);

final int height = dm.heightPixels; final int width = dm.widthPixels;

-1

希望这行代码能为你工作。我用这个时候我想在屏幕的高度ň宽度

// get screen width/height 

      DisplayMetrics metrics = new DisplayMetrics(); 
      getWindowManager().getDefaultDisplay().getMetrics(metrics); height = 
      metrics.heightPixels; width = metrics.widthPixels; 
3

尝试查看treeobserver方法.. 像:

main_layout.getViewTreeObserver().addOnGlobalLayoutListener(
      new OnGlobalLayoutListener() { 
       @Override 
       public void onGlobalLayout() 
        { 

         Rect r = new Rect(); 
         // r will be populated with the coordinates of your view 
         // that area still visible. 
         main_layout.getWindowVisibleDisplayFrame(r); 

         int heightDiff = main_layout.getRootView().getHeight()-(r.bottom -r.top); 

        } 
    }); 

替换main_layout与所需查看的对象。 希望它可以帮助。