剖析Android 线性布局中的权重(layout_weight)(解答疑惑)
来源:互联网 发布:mac装好的软件在哪里 编辑:程序博客网 时间:2024/05/22 07:50
首先看一下奇怪的的现象:
线性布局的情况下,有个非常奇怪的属性——android:layout_weight,该属性大部分视图控件中都有,它表示视图的重要度或者权重,看看以下两种情况下该属性的使用:
(1)水平布局的情况下:(android:orientation="horizontal")
第一种情况:设置 android: layout_width="fill_parent" 。
这个时候设置第一个TextView和第二个TextView的layout_weight的值分别为1和2,那么在水平方向上第一个TextView占据了三分之二的宽度,而第二个占据了三分之一的宽度。 也就是在这种情况下,layout_weight的值越大,重要度越低,也就是说占据的宽度越短(不太明白为什么叫重要度,而且这样描述也不太合理,姑且叫他重要度吧)。
第二种情况:设置android: layout_width="wrap_content"。
两个TextView的layout_weight同样是1和2,此时第一个TextView占了三分之一的宽度,而第二个TextView却占用了三分之二,跟上面的情况刚好相反。
(2)垂直布局的情况下:(android:orientation="vertical")
第一种情况:设置android:layout_height="fill_parent"。
设置android:layout_height="fill_parent",两个TextView的设置如下图所示,第一个TextView的高度占了三分之二,而第二个TextView只占了三分一。
第二种情况:设置android:layout_height="wrap_content"。
两个TextView的android:layout_height设置均为wrap_content,第一个TextView的高度占了三分之一,而第二个TextView占了三分之二。(图片就不贴了)
总结
根据上面的四个不同场景,可以知道官方说:“layout_weight数值越小,其重要度越高,即占的宽度或者高度份额越大”,可见它是已fill_parent为基准的。
我们看到上面现象一定会有疑问,为什么会出现相反的情况呢!这个使用layout_weight常会遇到的问题。
下面我们看一下“专家”是怎么分析其原理的:
我们在使用的时候一般情况把要布局的一般吧width或者height设置为0dp
- 剖析Android 线性布局中的权重(layout_weight)(解答疑惑)
- 剖析Android 线性布局中的权重(layout_weight)(解答疑惑)
- 剖析Android 线性布局中的权重(layout_weight)
- 剖析Android线性布局中 Layout_weight(权重)
- Android:深度探究线性布局LinearLayout中权重(layout_weight)属性
- Android中的Layout_weight(权重)详解
- Android中的Layout_weight(权重)详解
- Android中的Layout_weight(权重)详解
- Android中的Layout_weight(权重)详解
- 线性布局中的layout_weight属性
- Android中你也许不知道的线性布局Layout_weight属性权重比例分配原理
- Linearlayout线性布局中layout_weight权重分配不起作用?
- android权重android:layout_weight
- android 线性布局LinearLayout之layout_weight用法
- android开发笔记之权重(layout_weight)
- android布局中的layout_weight属性
- android:layout_weight 权重
- android:layout_weight权重分析
- CYGWIN安装图解以及NDK的配置
- linux ssh配置免密登陆后还需要输入密码
- 线程与进程的区别
- 关于fb0和fb1联动设置的问题
- [前端] clientWidth offsetWidth scrollWidth scrollTop scrollLeft 与 clientX pageX offsetX 解析
- 剖析Android 线性布局中的权重(layout_weight)(解答疑惑)
- 黑马程序员——OC语言基础篇---基本语法、类
- CSS选择器的权重与优先规则
- python 处理文件
- Android BLE 开发心得 UUID获取。
- Zabbix的学习过程--zabbix客户端
- XproerIM V2开源,基于XproerUI界面库构架
- Architecture 学习初步
- 在 Tomcat 中部署 Java Web 程序 ( jar cvf *.war */. ) war 包