位置: 编程技术 - 正文

[置顶] Android实习收获:UI细节bug引发的layout_weight深入理解([置顶]电影名字《收件人不详》)

编辑:rootadmin
今天在修改一个布局问题时候,发现自己对权重的理解还不够。首先问题如图:

推荐整理分享[置顶] Android实习收获:UI细节bug引发的layout_weight深入理解([置顶]电影名字《收件人不详》),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:[置顶]游戏名 TentacleLocker,[置顶]公主大人接下来是拷问时间31,[置顶]从lv2开始开挂的原勇者候悠闲的异世界生活,[置顶]JM259194,[置顶]JM259194,[置顶]从lv2开始开挂的原勇者候悠闲的异世界生活,[置顶]JM259194,[置顶]bilinovel,内容如对您有帮助,希望把文章链接给更多的朋友!

一个TextView没有按要求显示完整,显示成了2行。怎么办呢?

方法1:是把它左面的字体放小。 结果师兄说不可以随意修改布局的尺寸,否则测试还会提bug。

方法2:不让改字体,那就修改边距,图片的margin,textView的magin,统统改了遍。 结果可想而知,这么大的变动更不可以。

师兄看我这么愚钝,指点了一下:不修改布局,怎样能让时间不论在什么情况下都显示呢?

我的做法:显示布局:

还是那样。为什么呢? 设置layout_weight = “1”不就是为了保证它在什么情况下都显示吗?怎么回事。

4。师兄看不下去了,亲自示范给我,代码如下:

哇塞,这次ok了: 虽然一样都是设置layout_weight,但是设置在什么位置就显示出了对它的理解。我之前的理解一直都是把某个组件的宽或者高设置为0,然后再设置个权重为1,它就会填充所有剩下的空间。事实上很多时候也奏效了。今天这次让我仔细看了之前的一篇文章【Android入门的常见问题Part1】android:layout_weight的理解,结合这次的问题,好好思考了一下layout_weight的用法。用法总结:[置顶]
        Android实习收获:UI细节bug引发的layout_weight深入理解([置顶]电影名字《收件人不详》)

最常见的使用权重都是设置宽或者高为0dp,然后设置权重为1.而且整个布局中只有这一个权重。

比如说在一个listView下有个button,listView高度不确定,想让button始终显示,就给listView设置个权重。为什么这么用会有这样的效果呢?首先要明白,layout_weight表示的是对剩余空间的占有比例,我再强调一下,是剩余!既然是挑剩下的,那自然应该先让除他以外的其他组件显示。就比如说开篇的那个问题,想让显示时间的TextView不论何时都显示,就给其他的某个不太重要的组件设置权重,让那个不重要的自己根据剩余空间显示大小。

还有的时候我们布局中不仅一个权重,比如说为了屏幕适配,给布局中的所有子组件都设置权重,那么子组件就会占据权重响应的比例。

比如说:

- button1会占据2/3的位置,button2会占据1/3. - 注意,两个Button的宽度都是0dp

3.在2的情况下,我们设置Button的宽度为wrap_content:

还是之前强调的,layout_weight分配的是剩余的空间。上述代码中我们将2个按钮的宽度都设为wrap_content,假设他俩宽度都是2,整个布局宽度为.那么button1实际得到的宽度是:2 + ( -2 -2)*(2/3) = 6button2实际得到的宽度是: 2 + ( -2 -2)*(1/3) = 4

4.在3的情况下,我们设置Button的宽度为match_parent:

我们看到1和2的比例相反了,为什么呢?上述代码中我们将第一个按钮就设置为match_parent,即填充整个布局。第二个也设置为match_parent,如果没有权重,第二个是不会显示的。如果两个组件所占的空间之和超过了整个空间的大小,假设整个布局的宽度为,2个按钮由于设置match_parent理论上的宽度也分别为,这样2个组件超过了空间,该怎么分配呢?超出的部分也按照权重来分,不过是在组件原来占有空间的基础上来减去这个值所以2个按钮实际得到的大小为:button1实际得到的宽度是:-(+-)*2/3=1/3个空间大小button2实际得到的宽度是: -(+-)*1/3=2/3个空间大小。这就解释了为什么有时候weight值大,占有的权重反而小。权重所占的比例与对应的宽度、高度有关,视情况而定,不可死记硬背。不过要理解的就是分配的是剩下的空间,优先级最低。

Android快速开发之appBase——(5).BasePresenter的使用 转载请注明本文出自JFlex的博客

Android Fragment 真正的完全解析(上) 转载请标明出处:

自定义RatingBar 评分控件 /////room_rating_bar.xml?xmlversion="1.0"encoding="utf-8"?layer-listxmlns:android="

标签: [置顶]电影名字《收件人不详》

本文链接地址:https://www.jiuchutong.com/biancheng/387425.html 转载请保留说明!

上一篇:android页面多状态处理(android 多页面)

下一篇:Android快速开发之appBase——(5).BasePresenter的使用(android开发流程)

  • 怎么知道交不交印花税
  • 企业为员工代扣代缴个人所得税分录
  • 房地产开发企业土地增值税预缴
  • 销售不动产营业税纳税义务发生时间
  • 公司购买股票如何做账
  • 房地产企业怎么认定
  • 工会刻章费用计入什么支出
  • 固定资产转固后发现少转费用了怎么办
  • 企业的车辆因违法停放
  • 应收账款增值税专用发票
  • 半月的发票未认证能用吗
  • 三种类型的同期资料文档准备时间和提交税务机关时限有什么要求?
  • 计提本月工资记账凭证怎么填
  • 季度利润太高怎么计算
  • 企业为员工购买团体医疗险可以全额税前扣除
  • 个人开发票给公司需要提交哪些资料
  • 实收资本未到位借款利息可以税前扣除吗
  • 销售收入大于纳税申报销售收入
  • 印花税的缴纳方式包括
  • 无形资产原值增加,净值减少的原因
  • 长期股权投资增加的原因
  • 销售门窗并安装如何缴纳增值税
  • 发票金额大于报销金额可以吗
  • win7怎么获取管理员
  • PHP中register_shutdown_function函数的基础介绍与用法详解
  • 比较常见的病有哪些
  • window10自带商店下载位置
  • 增值税价外费用怎么算
  • 违约金列支
  • 老生常谈含义
  • 滴滴发票开公司名称可以抵扣进项吗
  • framework3.5怎么打开
  • vue3当中如何监听新增的属性
  • js示例
  • 讲讲vue3下会造成响应式丢失的情况
  • bert的原理
  • 比较好的微信名称有哪些
  • WordPress 浏览量修改
  • 营业外支出明细账
  • 小规模企业一定是小微企业吗
  • 公司注册登记需要提交的资料包括
  • 哪些税费需要计提
  • python字符串如何换行
  • 小企业会计准则适用于哪些企业
  • 建账的三个基本步骤
  • 增值税发票品名 归类
  • 基本户和零余额可以是一个账号么
  • 分期收款发出商品是什么意思
  • 其他综合收益转到留存收益
  • 如何计提本年度工资总额
  • 帮客户代付保证金合法吗
  • 为什么银行结息不加入账户
  • 工程投标保证金什么时候交
  • 政府征税再进行补贴对消费者福利的影响
  • 不提供银行流水的理由
  • 个税专项扣除住房租金标准
  • 财务建账应关注哪些内容
  • 向sql server数据库中导入
  • ubuntu不支持设置属性
  • macos finder的应用程序列表在哪里
  • win8电脑触摸屏没反应怎么办
  • win8怎么样的
  • win7开机提示音在哪里关闭
  • windows免费升级win10
  • win10下载英雄联盟运行没反应
  • win8如何隐藏任务栏
  • windows 8怎么样
  • 事件处理的三个要素
  • 纯js代码实现一进一出
  • js闭包作用问题解决应用
  • js中的隐式类型转换
  • linux共享内存最大值
  • 置顶朋友圈所有人能看到吗
  • js创建对象的几种方式
  • 安卓手机怎么自定义
  • javascript default
  • javascript如何写操作命令
  • 浙江宁波江北区都有哪些大学?
  • 银行手续费所得税是否可以税前扣除
  • 中国十大经济农村
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设