Android fragment中view的width为0

2019-08-27  本文已影响0人  yunhen

fragment 中没有 onWindowFocusChanged () ,所以要给一个根Layout设置视图树观察者

ViewTreeObserver vto = layRootView.getViewTreeObserver();
        vto.addOnGlobalLayoutListener(rootGlobalLayoutListener);



public ViewTreeObserver.OnGlobalLayoutListener rootGlobalLayoutListener
            =  new ViewTreeObserver.OnGlobalLayoutListener() {
        @Override
        public void onGlobalLayout() {
          int  imgWidth = view.getWidth();
            LogUtils.e(TAG,"OnGlobalLayoutListener imgWidth=  " + imgWidth);
           
            // 成功调用一次后,移除方法,防止被反复调用
            layRootView.getViewTreeObserver().removeOnGlobalLayoutListener(rootGlobalLayoutListener);
        }
    };
上一篇 下一篇

猜你喜欢

热点阅读