对Android自定义控件中的onMeasure方法的理解
来源:互联网 发布:mac雷蛇驱动安装失败 编辑:程序博客网 时间:2024/05/21 17:02
这两天准备写一个自定义的Button,可以实现点击监控并监听的,但是发现自己太嫩了。在onMeasure()停了好久,才发现自己最开始的理解就是错误了的。
我们都知道,一个自定义view主要通过onMeasure,onLayout,onDraw来决定,所以现在我们救助要看看onMeasure。而对于onMeasure中的细节,我想网上的大神贴太多,所以我也不班门弄斧了。
现在我就主要来说我遇到的问题吧,我们都知道在onMeasure中有两个参数widthMeasureSpec, heightMeasureSpec;而这两个参数就是封装了Mode和Size。其中Mode中有三中类型:
MeasureSpec.EXACTLY:父视图希望子视图的大小应该是specSize中指定的。
MeasureSpec.AT_MOST:子视图的大小最多是specSize中指定的值,也就是说不建议子视图的大小超过specSize中给定的值。
MeasureSpec.UNSPECIFIED:我们可以随意指定视图的大小。
我的问题就是出现在这里,开始我以为“父视图希望子视图的大小应该是specSize中指定的”是指父视图如果是match_parent或者一个具体的值,然而通过实验,我发现是子视图的width所决定的。
简单的说,Mode是MeasureSpec.EXACTLY的话,子视图就可以决定自己的大小。
0 0
- 对Android自定义控件中的onMeasure方法的理解
- android中对自定义View的onMeasure()方法的理解
- Android对View的onMeasure方法理解
- 解决滑动冲突和自定义控件中对onMeasure(int widthMeasureSpec, int heightMeasureSpec)方法的理解
- 自定义控件:onMeasure 方法和测量原理的理解
- android中对View的onMeasure()方法的理解
- android中对View的onMeasure()方法的理解
- android中对View的onMeasure()方法的理解
- Android自定义控件onMeasure方法简单的重写
- Android UI学习|对View的onMeasure方法理解
- Android 自定义控件onMeasure()方法详解
- 自定义控件的onMeasure方法详解
- 自定义View的onMeasure方法理解
- 对onMeasure方法的深度理解
- Android自定义控件的onMeasure和onLayout
- Android 自定义View onMeasure 的理解
- Android 自定义View 中的OnMeasure的用法
- Android 自定义View 中的OnMeasure的用法
- 设计模式学习笔记--工厂方法模式
- Hadoop学习笔记(十五)---Hbase shell命令的使用
- iOS开发网络—10监测网络状态
- 游戏开发经验分享:我所理解的打击感
- 软件项目管理之我见
- 对Android自定义控件中的onMeasure方法的理解
- Java中Properties类
- Python特殊语法:filter、map、reduce、lambda [转]
- socket通信简介
- Cpp Primer<<学习IO标准库--条件状态_5
- ASP.NET WebForm Form表单如何实现MVC那种“自动装配”效果呢?
- 某程序员求职信
- CentOS7 + mysql-cluster-7.4.6 配置部署
- iOS开发网络—11发送json数据给服务器以及多值参数