位置: 编程技术 - 正文

[置顶] 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开发流程)

  • 未交增值税是什么科目
  • 如何查商品税收分类编码
  • 卷式发票是什么样的
  • 冲红发票怎么写备注
  • 金蝶怎么反结账上月的凭证
  • 转回存货跌价准备为什么是可抵扣暂时性差异
  • 高新技术企业入库难吗
  • 审计核减理由
  • 用人单位必须要有试用期吗
  • 职工宿舍楼日常管理制度
  • 公司注销时有大额应付款如何做账务处理合适?
  • 发放股票股利的账务处理
  • 推广和业务
  • 对外来发票金额怎么算
  • 增值税专票5%税率
  • 所得税为负值是什么意思
  • 个人所得税返还奖励财务人员做账
  • 补交社保后的个税怎么交
  • 航天开票系统清单流程
  • 增值税如何确认
  • 营业收入在财务报表上跟实际多出来怎么解释
  • 已认证的发票在哪里查
  • 收入未实现成本怎么进
  • 社保已申报但未缴费有什么影响
  • 企业所得税取得股息红利
  • 其他应收款贷方重分类到哪个科目
  • 没收的定金 会计分录
  • 如何在苹果电脑上删除软件
  • php递归函数详解
  • php魔术方法的讲解与使用
  • 阻止电脑系统更新设置在哪
  • 微软的客户主要是什么
  • 在linux中使用什么命令可以动态查看文件内容
  • 当月认证了发票但没有进行增值税申报
  • php图片链接
  • PHP:mcrypt_module_get_algo_block_size()的用法_Mcrypt函数
  • 固定资产清理的累计折旧怎么算
  • 普票销售方信息不完整可以用吗
  • thinkphp框架的作用
  • php cache缓存
  • kaldi官网
  • 离职补偿金可以拖欠么
  • 民间非营利组织包括哪些单位
  • 弥补亏损的会计分录
  • 医疗机构收据
  • SQLite速度评测代码
  • python logger
  • 出口货物赠品如何申报
  • 商业承兑汇票贴现什么意思
  • 外经证网上查询
  • 长期待摊费用如何记账
  • 内账会计有法律风险吗
  • 以前年度损益调整在利润表中怎么填
  • 建筑企业需要缴纳的税种
  • 以土地出资的税费怎么算
  • 营业税金及附加和税金及附加有什么区别
  • 政府给的专款专用的补助,怎么入账
  • 以前年度损益调整在报表哪里体现
  • 红字发票的开具需要把开始的发票取回作废吗?
  • 物流运输业务
  • 政府补贴递延收益的摊销时间
  • 医疗器械销售能一年挣一百万么
  • 退回拨款会计分录怎么做
  • windows安装在何处
  • windows10体验指数如何查看
  • mac照片内存清理
  • 如何设置win10用户名
  • android@localhost#1
  • 安卓开发过程中的问题
  • python做应用软件界面
  • jquery jsonview
  • unity3d从入门到精通
  • python 文件操作,读,写,指定位置
  • android基础教程第三版电子版
  • 江苏国税电子税务局打印机设置
  • 农产品核定管理办法最新
  • 济南高新发展公告
  • 个人所得税app可以更改电话号码吗
  • 综述与系统综述
  • 曲靖注册公司要哪些条件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设