getHeight()和getMeasuredHeight()的区别,getWidth()和getMeasuredWidth()相同

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lg491733638/article/details/53317646

getHeight()和getMeasuredHeight()的区别,getWidth()和getMeasuredWidth()相同

  1. getHeight():必须在onlayout方法执行完后,才能获得高度;

                   headerView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
                    @Override
                    public void onGlobalLayout() {
                        // TODO Auto-generated method stub
                        headerHeight=headerView.getMeasuredHeight()Height();
                        headerView.setPadding(0, -headerHeight, 0, 0);
                        ref_listview.addHeaderView(headerView);//添加headerView必须在setAdapter之前
                    }
                });
    
  2. getMeasuredHeight():获取测量完的高度,只要在onMeasure方法执行完,就可以用它获取到高度,在自定义控件内部多使用这个方法,使用view.measure(0,0)方法可以主动通知系统测量,然后就可以直接使用它获取宽高

猜你喜欢

转载自blog.csdn.net/lg491733638/article/details/53317646