Android初级教程_获取Android控件的宽和高

通过以下方法可以在onCreate中获取宽高

1
//------------------------------------------------方法一 2 int w = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED); 3 int h = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED); 4 imageView.measure(w, h); 5 int height =imageView.getMeasuredHeight(); 6 int width =imageView.getMeasuredWidth(); 7 textView.append("\n"+height+","+width); 8 9 10 11 12 //-----------------------------------------------方法二 13 ViewTreeObserver vto = imageView.getViewTreeObserver(); 14 vto.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() { 15 public boolean onPreDraw() { 16 int height = imageView.getMeasuredHeight(); 17 int width = imageView.getMeasuredWidth(); 18 textView.append("\n"+height+","+width); 19 return true; 20 } 21 }); 22 //-----------------------------------------------方法三 23 ViewTreeObserver vto2 = imageView.getViewTreeObserver(); 24 vto2.addOnGlobalLayoutListener(new OnGlobalLayoutListener() { 25 @Override 26 public void onGlobalLayout() { 27 imageView.getViewTreeObserver().removeGlobalOnLayoutListener(this); 28 textView.append("\n\n"+imageView.getHeight()+","+imageView.getWidth()); 29 } 30 });

 

posted @ 2015-03-11 10:51  别人眼中的过客  阅读(255)  评论(0编辑  收藏  举报