1.首先声明只有在Linearlayout中,layout_weight属性才有效。

在这里我们设置三个的权重比为 蓝1:黄2:红2那么它的效果是不是 蓝1:黄2:红2呢

 <TextViewandroid:layout_weight="1"android:layout_width="match_parent"android:layout_height="match_parent"android:background="@color/blue"/><TextViewandroid:layout_weight="2"android:layout_width="match_parent"android:layout_height="match_parent"android:background="@color/yellow"/><TextViewandroid:layout_weight="2"android:layout_width="match_parent"android:layout_height="match_parent"android:background="@color/red"/>

然而实际的效果并不是蓝1:黄2:红2而是蓝2:黄1:红1 很多人感觉这个安卓的权重是成反比的,这个效果的展示的效果确实是这样,但是事实并不是这样的:

实际上它是用来指定(剩余空闲空间)的分割比例,而非按比例分配整个空间。另外android:layout_weight会引起争议,是因为在设置该属性的同时, 设置android:layout_width为wrap_content和match_parent会造成两种截然相反的效果。因为在这里设置为match_parent是用了屏幕的宽度(假设屏幕的宽度为1080),所以三个颜色设置下来屏幕的闲散空间为-2160那么按照刚才的笔记1080+(-2160*1/5)是不是就是最多的那份所以会造成一种反比的效果。

如果想用layout_weight平均分配空间,正确方式是将layout_width(或layout_height)设置为0dp或者设置为wrap_content,
      再通过layout_weight按比例分配空间

Android 关于Android权重的真正理解相关推荐

  1. [深入理解Android卷一全文-第九章]深入理解Vold和Rild

    为什么80%的码农都做不了架构师?>>>    由于<深入理解Android 卷一>和<深入理解Android卷二>不再出版,而知识的传播不应该因为纸质媒介的 ...

  2. [深入理解Android卷一全文-第十章]深入理解MediaScanner

    由于<深入理解Android 卷一>和<深入理解Android卷二>不再出版,而知识的传播不应该由于纸质媒介的问题而中断.所以我将在CSDN博客中全文转发这两本书的全部内容. ...

  3. android binder与handler的简要理解

    android的进程之间的通信 采用binder机制,我们先弄明白binder到底是什么. 其实binder属于一个驱动,位于linux内核层,它的作用是完成进程间的通信. 而binder机制包括4个 ...

  4. Android中BindService方式使用的理解

    Android中BindService方式使用的理解 - 唯一小神 - 博客园 最近学习了一下Android里面的Service的应用,在BindService部分小卡了一下,主要是开始没有彻底理解为 ...

  5. Android 多媒体视频播放一( 多媒体理解与经验分享)

    前言 说到android的多媒体,一把辛酸一把泪,当初听说会多媒体的比较牛掰,公司也有需求,于是乎我也积极的加入研究android多媒体的行列,记得以前刚接触的时候,最开始还是比较头大的,主要是但是很 ...

  6. android 高度上分权重,Android LinearLayout weight权重使用

    在日常的开发过程中,我们通常或多或少会使用到LinearLayout的weight属性来进行权重设置,进而达到按比例显示布局的意图 通常我们在使用时,会这样使用 android:layout_widt ...

  7. android应用开发(24)---理解任务和返回堆栈

    理解任务和返回堆栈 任务是用户在执行某项工作时与之交互的一系列活动.这些活动排列在一个堆栈中 - 后台堆栈) - 按每个活动的打开顺序排列.例如,电子邮件应用程序可能有一个活动来显示新消息列表.当用户 ...

  8. 【Android 10 源码】深入理解 Omx 初始化

    MediaCodec 系列文章: [Android 10 源码]深入理解 MediaCodec 硬解码初始化 [Android 10 源码]深入理解 Omx 初始化 [Android 10 源码]深入 ...

  9. 【Android 10 源码】深入理解 software Codec2 服务启动

    MediaCodec 系列文章: [Android 10 源码]深入理解 MediaCodec 硬解码初始化 [Android 10 源码]深入理解 Omx 初始化 [Android 10 源码]深入 ...

  10. [深入理解Android卷二 全文-第八章]深入理解ContentService和AccountManagerService

    由于<深入理解Android 卷一>和<深入理解Android卷二>不再出版,而知识的传播不应该因为纸质媒介的问题而中断,所以我将在CSDN博客中全文转发这两本书的全部内容 第 ...

最新文章

  1. 强化学习(六) - 连续空间中的强化学习(RL in Continuous Spaces)及相关实例
  2. JavaScript 方法传参
  3. Elasticsearch分页查询Fromamp;Size VS scroll
  4. 洛谷2619/bzoj2654 Tree(凸优化+MST)
  5. LeetCode 865. 具有所有最深结点的最小子树(递归)
  6. 【jq插件】Grade-打分效果
  7. 你必须要知道的数据备份工具rsync
  8. 单体测试书的检查要点
  9. VScode上修改字体样式
  10. windows10 快捷代码
  11. 图片批量重命名编号不要括号
  12. FIX - 克隆虚拟机NAT模式网络不通、不稳定、vMnet8网络故障、网卡冲突、ssh连接慢
  13. 一路走好——稻盛和夫先生
  14. Ink脚本语言学习笔记(三)
  15. 用计算机制作个人简历图片,计算机应用基础制作个人简历.ppt
  16. JavaGUI--模拟QQ聊天界面私聊群聊
  17. 耐得住寂寞,才守得住繁华
  18. 联想e470加装固态硬盘_联想e470能不能加固态硬盘?
  19. 调查问卷动态生成的一点探索
  20. 机器人工程的工作与考研之困惑“取舍”

热门文章

  1. [论文阅读]Structure-from-Motion Revisited
  2. Windows通用克隆系统入门基础知识简介
  3. 数据库身份证号用什么类型_为什么喝不同的茶要用不同类型的茶具?
  4. [附源码]java毕业设计体检中心健康管理系统
  5. 【集创赛】arm杯一等奖作品:智能BLDC驱动系统
  6. Endnote无法正确识别引文
  7. 学生党专用计算机,学生性价比高的电脑推荐 这3款最适合学生党入手
  8. 问题:谷歌浏览器(Chrome)无法访问网站ERR_CONNECTION_REFUSED
  9. 信息学奥赛一本通 1335:【例2-4】连通块
  10. javamail 读取邮箱邮件并下载附件