在oncreate中获取view大小为0 的解决办法:
//处理oncreate时, seekbar宽度为0.
ViewTreeObserver observer = brightnessProgressBar.getViewTreeObserver();
observer.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
vProgressText.setVisibility(View.VISIBLE);
setScreenBrightnessViewUI(mDisplayViewInfo);
brightnessProgressBar.getViewTreeObserver().removeOnGlobalLayoutListener(this);
}
});
通过ViewTreeObserver 的onGlobalLayout 后可以正常获取大小。
防止出现无限回调onGlobalLayout , 要remove 回调
方法如上代码:
brightnessProgressBar.getViewTreeObserver().removeOnGlobalLayoutListener(this);