View.onMeasure()
来源:互联网 发布:网络爬虫实战 编辑:程序博客网 时间:2024/06/03 09:26
在Android自定义view中onMeasure是一个常用到的方法,我们可以使用它来对view的width和height进行设置.
在onMeasure()中,我们使用MeasureSpec来辅助对view的width,height的测量,MeasureSpec是一个32位的int值,其中高2位为测量模式,低30位为测量大小.
MeasureSpec的模式:
- EXACTLY
精确值模式,当我们将view的width和height属性设置为具体的数值和match_parent时,系统使用的是EXACTLY模式. - AT_MOST
最大值模式,当我们将view的width和height属性设置为wrap_content时控件的大小一般随着控件的子空间或内容的变化而变化,此时控件的尺寸只要不超过父控件允许的最大尺寸即可. - UNSPECIFIED
不指定大小测量的模式,一般在绘制自定义view时使用.
view默认的onMeasure()方法只支持EXACTLY模式,如果要使用AT_MOST模式的话,必须重写onMeasure()方法.
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { setMeasuredDimension(getDefaultSize(getSuggestedMinimumWidth(), widthMeasureSpec), getDefaultSize(getSuggestedMinimumHeight(), heightMeasureSpec));}
通过在view中的onMeasure方法,我们可以发现,最后调用的是setMeasuredDimension(int,int)方法来给view这是高宽.所以在我们重写onMeasure()发法中,我们可以直接通过setMeasuredDimension(int,int)来给view自定义width,height.
0 0
- View.onMeasure()
- View.onMeasure()
- Android View onMeasure 方法
- View的onMeasure方法
- View 的onMeasure方法
- view onMeasure方法说明
- Android View.onMeasure方法
- 自定义View之onMeasure()
- 自定义View之onMeasure()
- 自定义View之onMeasure()
- 自定义View之onMeasure()
- android View onMeasure
- 自定义View之onMeasure()
- 自定义View之onMeasure()
- 自定义View之onMeasure()
- 自定义View之onMeasure()
- 自定义View之onMeasure()
- 自定义View之onMeasure()
- 思科无线AP配置之二(通过超级终端配置ap的ip地址篇)
- boost多平台编译方法
- sqlserver字段相同情况下另一字段实现自动增长
- 综合项目之乐学成语
- Java 中常用缓存Cache机制的实现
- View.onMeasure()
- redis 配置密码
- JQueryiframe页面操作父页面中的元素与方法
- 在程序中延时一段时间
- linux基础知识
- c/c++语言基础——编译和链接
- 什么是虚拟内存?
- jquery中的事件
- 前端源码安全