Androd layout_weight的真正含义
2015-10-22 15:18
447 查看
layout_weight的真正含义
layout_weight的真实含义是:View的宽度等于原有宽度(android:layout_width)加上剩余空间的占比预设条件
TotalWidth =L
View1 weight=1 占比=1/3
View2 weight=2 占比=2/3
案例一
View1 0dpView2 0dp
剩余空间 = L-(0+0)= L
View1 原有宽度=0 剩余宽度占比为(1/3)L= (1/3)L 最终实际显示宽度为 0+(1/3)L=(1/3)L View12 原有宽度=0 剩余宽度占比为(2/3)L= (2/3)L 最终实际显示宽度为 0+(2/3)L=(2/3)L
案例二
View1 match_parentView2 match_parent
剩余空间 = L-(L+L)= -L
View1 原有宽度=L 剩余宽度占比为 = -L(1/3) 最终实际显示宽度为 L+(1/3)-L=2/3L View1 原有宽度=L 原有宽度=L 剩余宽度占比为 = -L(2/3) 最终实际显示宽度为L+2/3(-L)=1/3L。
案例三
View1 0dpView2 match_parent
剩余空间 = L(0+L)= 0
View1 原有宽度=L 剩余宽度占比为 = 0 最终实际显示宽度为 0+0=0 View1 原有宽度=L 原有宽度=L 剩余宽度占比为 = 0 最终实际显示宽度为 L+0=L。
经使用View测试,以上案例实际情况与预计都相符.
其他情况
在使用TextView测试的情况下,我们会发现很多上述案例都与预计不符合。原因是,当TextView的width设置为0dp时,在onMeasure时,仍然被分配wrap_content的宽度,所以在计算需要考虑这些因素.
参考: http://blog.csdn.net/yanzi1225627/article/details/24667299
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories