0dp 和权重是啥意思? [复制]

Posted

技术标签:

【中文标题】0dp 和权重是啥意思? [复制]【英文标题】:What does 0dp and weight mean? [duplicate]0dp 和权重是什么意思? [复制] 【发布时间】:2018-04-17 18:04:51 【问题描述】:

想出了这个问题。有人可以解释一下吗?

Q. 假设一个布局文件声明了一个名为 LL 的 LinearLayout,其中包含两个子 View,View1 和 View2。在布局文件 View1 中,android:layout_weight 为 2,layout_width 为 0dp。视图 2 的 android:layout_weight 为 3,layout_width 为 0dp。在这个例子中,下列哪个陈述必须是正确的?

(a) 视图 2 占 LL 宽度的 3/5。

(b) 视图 1 占据显示器宽度的 2/5。

(c) 视图 2 占据了显示屏宽度的 2/3。

(d) 视图 1 占 LL 宽度的 2/3。

根据解决方案(a)是正确的。谁能解释一下?

【问题讨论】:

【参考方案1】:

两个视图的总权重为 5。因此视图 1 将占 LL 的 2/5,视图 2 将占 LL 的 3/5。显示宽度无关紧要。

【讨论】:

这不是无关紧要的。您需要强制将大小归零以使重量正常工作。否则,你会得到意想不到的结果,Android Studio 甚至会警告你 视图在线性布局中,由于没有关于线性布局约束的信息,答案 b & c 没有任何意义。 对不起,你以为你的意思是 ViewGroup 宽度。是的,设备的宽度并不重要 我不知道为什么只有选项(a)是正确的

以上是关于0dp 和权重是啥意思? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

!== 和 === 在 PHP 中是啥意思? [复制]

*args 和 **kwargs 是啥意思? [复制]

退出(0)和退出(1)是啥意思? [复制]

托管和非托管代码是啥意思? [复制]

Python 中的 @ 和 lambda 是啥意思? [复制]

函数签名中变量名前的 * 和 ** 是啥意思? [复制]