android weight(权重)的详细分析
首先要明确权重分配的是那些空间?
权重是依照比例分配屏幕的剩余空间
对这句话不理解的能够看下图
假如我们希望剩余的空间平分给空间1 和空间2 ,
我们分别在2个控件的设置android:layout_weight="1"
上面算是对权重的分析,详细使用方法例如以下
先看一段代码吧
<span style="font-size:32px;"><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:weightSum="2"> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#66ff66"
android:layout_weight="1"
android:text="面码" /> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#ff0000"
android:layout_weight="1"
android:text="小木" /> </LinearLayout></span>
这段代码非常简答。这里是水平方向为样例的。
我就说下android:weightSum="2"
这个是权重分的总个数。这里我分为2分,
这个能够要能够不要。当你对权重不是非常理解的的话建议要
上面代码的效果图
我把背景颜色设置不同,方便大家看呢,这时候两者是平分的,
原因是控件的初始长度一样,都是wrap_content,为了便于区分
权重分配的是剩余的空间。把初始长度设置为不一样,看以下代码
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:weightSum="2">
<TextView
android:layout_width="120dp"
android:layout_height="wrap_content"
android:background="#66ff66"
android:layout_weight="1"
android:text="面码" />
<TextView
android:layout_width="30dp"
android:layout_height="wrap_content"
android:background="#ff0000"
android:layout_weight="1"
android:text="小木" />
</LinearLayout>
效果图
非常明显不一样了,原因也就是两者控件初始化长度
不一样,把剩余的空间平分给他们之后他们的
长度于是会不一样的
以上就是整个项目布局完之后我对权重的理解,
对了提一下,项目中我一般设置 android:layout_width="0dp"
代码还用刚才的吧
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:weightSum="2"> <TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:background="#66ff66" android:layout_weight="1"
android:text="面码" /> <TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:background="#ff0000" android:layout_weight="1"
android:text="小木" /> </LinearLayout>
为啥要把长度设置为0呢?这就要从我写的第一句话看是想了
那就为了为了能更好的分配剩余的空间。忽略掉初始的长度。
以上就是我的理解,
补充下http://blog.csdn.net/qq_33210042/article/details/50902052
那在上张图片
开发中会常常遇到把字放到控件的中间在用viewgroup滑动同一时候
能改变字体的颜色。详细的实现就不说了,这里说下布局
我们要的就是这种把。左右滑动点击同一时候也能切换,
当然有时候不止2个那就把权重多分几份。
看下布局的代码
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:weightSum="2">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:background="#66ff66"
android:gravity="center"
android:layout_weight="1"
android:text="面码" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:background="#ff0000"
android:gravity="center"
android:layout_weight="1"
android:text="小木" />
</LinearLayout></span>
用到了
android:gravity 就是当前控件内容显示的位置。
这里我是顺便提下,假设换有对不布局不理的童鞋
关注我的博客。我会个大家一同进步的。
android weight(权重)的详细分析的更多相关文章
- [Android Pro] Android签名与认证详细分析之二(CERT.RSA剖析)
转载自: http://www.thinksaas.cn/group/topic/335449/ http://blog.csdn.net/u010571535/article/details/899 ...
- android关于AndroidManifest.xml详细分析
http://my.eoe.cn/1087692/archive/5927.html 一.关于AndroidManifest.xmlAndroidManifest.xml 是每个android程序中必 ...
- Android Scroller类的详细分析
尊重原创作者,转载请注明出处: http://blog.csdn.net/gemmem/article/details/7321910 Scroller这个类理解起来有一定的困难,刚开始接触Scrol ...
- [Android Pro] Android签名与认证详细分析之一(CERT.RSA剖析)
转载自:http://www.thinksaas.cn/group/topic/335450/ 一.Android签名概述 我们已经知道的是:Android对每一个Apk文件都会进行签名,在Apk文件 ...
- Android PermissionChecker 权限全面详细分析和解决方案
原文: http://www.2cto.com/kf/201512/455888.html http://blog.csdn.net/yangqingqo/article/details/483711 ...
- android异步任务asyncTask详细分析
android中的耗时操作需要放在子线程中去执行 asynctask是对Handler和和线程池的封装,直接使用比THread效率更加的高效因为封装了线程池,比我们每次直接new Thread效率更高 ...
- Android中Scroller类的分析
今天看了一下项目中用到的ViewFlow控件,想弄明白其工作原理.从头开始分析,卡在"滚动"这儿了. 做android也快两年了,连最基本的滚动都不熟悉,真是惭愧...遂网上找资料 ...
- Android 布局之LinearLayout 子控件weight权重的作用详析(转)
关于Android开发中的LinearLayout子控件权重android:layout_weigh参数的作用,网上关于其用法有两种截然相反说法: 说法一:值越大,重要性越高,所占用的空间越大: 说法 ...
- Android 布局之LinearLayout 子控件weight权重的作用详析
关于Android开发中的LinearLayout子控件权重android:layout_weigh参数的作用,网上关于其用法有两种截然相反说法: 说法一:值越大,重要性越高,所占用的空间越大: 说法 ...
- android ListView 九大重要属性详细分析、
android ListView 九大重要属性详细分析. 1.android ListView 一些重要属性详解,兄弟朋友可以参考一下. 首先是stackFromBottom属性,这只该属性之后你做好 ...
随机推荐
- Centos7下安装python环境
前言 centos7默认是装有pyhton的. #检查python版本 [root@oldboy_python ~ ::]#python -V Python 但是众所周知,python2版本到2020 ...
- MySQL的DML和DQL 增删改查
DML和DQL 增删改查 SELECT * FROM grade --新增 insert -- 向年级表中新增3条数据INSERT INTO grade(gradeID,gradeName) VA ...
- 【转】linux read 用法
转自:http://www.cnblogs.com/iloveyoucc/archive/2012/04/16/2451328.html 1.基本读取 read命令接收标准输入(键盘)的输入,或其他文 ...
- WinForm窗体项目 之 MySchool管理系统终极版
学习WinForm窗体程序也有一段时间了,今天就来尝试着来一个项目热热身~ 在我们通常使用的MySchool管理中,不外乎这几种功能:增.删.改.查.改密码 在过去的C#中确实是挺简单的,但是在学习了 ...
- Win32子窗口的创建
本文主要是在一个主窗口下创建一个子窗口.主窗口有一个菜单,菜单下只有设置一个选项,点击设置选项,弹出设置界面,点击设置界面关闭则关闭.我在开发的时候遇到两个问题,第一就是一点设置关闭就整个应用都关了, ...
- R 连接数据库长数字被科学计数法解决方法
数据库中的订单编号
- CSS——层级
层级问题:选中的盒子显示的效果并不完整,右边的边框并没有显示红色,原因是其右边的盒子压了它的边框. <!DOCTYPE html> <html lang="en" ...
- CSS学习笔记----选择器
用过css的同志们都知道,选择器是非常重要的,如果选择器使用不当,即使你的css写的再好,但是不知道要用在哪个元素上,这不是英雄无用武之地吗? css,用过的都说好! 最基本的选择器,id选择器,类选 ...
- nuxt https
我用的模板是nxut-express,版本是:1.4.2.服务器:阿里云.一.申请免费证书:网站能通过https访问,首先得申请https证书,付费的阿里云上有售卖的,一年几千块.免费的可以通过cer ...
- CAD插入图块前修改图块文字
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...