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 });

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。