通过以下方法可以在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 });

 

相关文章:

  • 2022-12-23
  • 2021-09-28
  • 2021-10-01
  • 2022-12-23
  • 2021-06-16
  • 2021-09-04
  • 2021-08-17
猜你喜欢
  • 2021-05-29
  • 2022-12-23
  • 2021-12-03
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案