zoukankan      html  css  js  c++  java
  • 学习进度10

    1、直接继承View的自定义控件需要重写onMeasure方法并设置wrap_content时的自身大小,否则在布局中使用wrap_content时就相当于使用match_parent。

    2、在Activity的onCreate、onStart、onResume方法中均无法正确得到某个View的宽/高信息,这是因为View的measure过程和Activity的生命周期方法不是同步执行的,因此无法保证Activity执行了onCreate、onStart、onResume时某个View就已经测量完毕了,如果View还没有测量完毕,那么获得的宽/高就是0。

    可以通过如下四个方法来解决获取View宽/高为0的问题:

    • 在Activity/View的onWindowFocusChanged方法(View已经初始化完毕了,宽/高已经准备好了)中获取View的宽高;

    • 在view.post(runnable)方法(将runnable投递到消息队列的尾部,等待Looper调用此runnable的时候,View也已经初始化好了)中获取View的宽高;

    • 使用ViewTreeObserver;

    • 手动调用View的measure方法;

  • 相关阅读:
    Linux服务器远程ssh为centos7安装MySQL
    MyBatis配置文件模版
    强烈推荐Spring MVC初学好文章
    Servlet生成验证码
    Mac OS 配置环境变量
    Spring MVC pom.xml
    Manve阿里云仓库
    CentOS7.X怎样更新yum源
    django 登录
    django 接收 post请求
  • 原文地址:https://www.cnblogs.com/utube/p/14954799.html
Copyright © 2011-2022 走看看