android开发之view宽和高的获取

在最近项目中,想要获取view控件的大小,通过view.getHeight和view.getWidth,怎么获取都是null。

  如何在绘制组件之前能获取到该组件的尺寸大小呢?

一、

/** 
* 获取的控件的高宽
 * @param view 
*/
        ViewTreeObserver vto = view.getViewTreeObserver();   
                vto.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {     
             @Override      
              public void onGlobalLayout() {        
                      view.getViewTreeObserver().removeGlobalOnLayoutListener(this);        
                              view.getHeight();         
                              view.getWidth();   
   }  
 });

二、

/** * 获取控件的高 
* @param view 
* @return    
*/
public static int getViewHeight(View view){   view.measure(WindowManager.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.WRAP_CONTENT); 
        view.getMeasuredHeight();//高度  
        view.getMeasuredWidth();//宽度   
        return view.getMeasuredHeight();}

此方法可在activity中通过返回值获取。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容