在onCreate方法中获取某个View的宽度和高度
2013-11-19 23:49
441 查看
有时候需要在onCreate方法中知道某个View组件的宽度和高度等信息,而直接调用View组件的getWidth()、getHeight()、getMeasuredWidth()、getMeasuredHeight()、getTop()、getLeft()等方法是无法获取到真实值的,只会得到0。这是因为View组件布局要在onResume回调后完成。下面提供实现方法,onGlobalLayout回调会在布局完成时自动调用
final LinearLayout imageViewContainer = (LinearLayout)findViewById(R.id.crop_photo_image_view_container); imageViewContainer.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() { boolean isFirst = true;//默认调用两次,这里只让它执行一次回调 @Override public void onGlobalLayout() { if (isFirst) { isFirst = false; //现在布局全部完成,可以获取到任何View组件的宽度、高度、左边、右边等信息 Log.i("CDH", "Global W:"+imageViewContainer.getMeasuredWidth()+" H:"+imageViewContainer.getMeasuredHeight()); } } });
相关文章推荐
- HackThirteen 在onCreate()方法中获取View的宽度和高度
- 在onCreate方法中获取某个View的宽度和高度
- 获取view的高度和宽度(在onCreate方法中)
- 在onCreate()方法中获取View的宽度与高度
- android在onCreate()方法中获取View的宽度与高度的方法实战
- 在onCreate方法中获取某个View的宽度和高度
- 如何在activity的onCreate方法中获取某个view的高度或宽度
- android在onCreate()方法中获取View的宽度与高度的方法实战
- Mark---获取view的高度和宽度(在onCreate方法中)
- 在onCreate方法中获取某个View的宽度和高度
- Android获取屏幕或View宽度和高度的方法
- 如何在onCreate()方法中,获取得到控件的宽度和高度?小意思!
- 在Activity中onCreate方法里面获取空间宽度和高度的新姿势
- 在oncreate中如何获取view的高度和宽度
- android安卓onCreate方法中获取控件宽度高度
- 最简便的在Activity中获取View的宽度或高度方法
- Android OnCreate()中获取控件高度与宽度两种方法详解
- Android如何在onCreate()方法中获取控件的高度和宽度
- 获取控件(布局或View)宽度或高度的方法
- Android在onCreate()方法中动态获取TextView控件的高度