一般情况:

View's getWidth() and getHeight() returns 0

View初始状态为GONE的情况

    private int mMeasuredHeight;    private int mMeasuredWidth;    private boolean firstVisible = true;    @Override    protected void onVisibilityChanged(@NonNull View changedView, int visibility) {        super.onVisibilityChanged(changedView, visibility);        if (visibility == View.VISIBLE) {//可见状态            if (firstVisible) {                mSeekBar.getViewTreeObserver().addOnGlobalLayoutListener(new                                                        ViewTreeObserver.OnGlobalLayoutListener() {                    @Override                    public void onGlobalLayout() {                        mMeasuredWidth = mSeekBar.getMeasuredWidth();                        mMeasuredHeight = mSeekBar.getMeasuredHeight();                        Log.e("", "onGlobalLayout " + mMeasuredWidth + " " +                                                                          mMeasuredHeight);                        mSeekBar.getViewTreeObserver().removeOnGlobalLayoutListener(this);                    }                });                firstVisible = false;            }        }    }

 

更多相关文章

  1. Android 检查wifi状态
  2. android沉浸式状态栏实现,android沉浸式状态栏工具类
  3. Android 透明状态栏实现方案
  4. android > 广播监听电话状态
  5. android 按纽状态配置文件
  6. 监听电话状态
  7. Android 状态栏透明
  8. 获取android顶部状态栏高度的两种方式
  9. Android命令行测试BT,WIFI,Sensor工作状态

随机推荐

  1. PHP变量代码演示及简单函数演示
  2. php的运行原理和变量类型
  3. 使用 electron-builder 打包 Electron 程
  4. Python中使用OpenCV库来进行简单的气象学
  5. php变量的8种类型. 遍历php多维数组(forea
  6. 板绘如何体现金属质感?板绘金属质感绘画教
  7. Debian11系统安装
  8. php变量的种类与购物车
  9. 宝塔面板+小鸟云服务器安全设置
  10. JS里 in_array() 的封装.