文本视图在 DP 中具有相同的宽度设置但显示不同

A textview has the same width setting in DP but appears different

我将小部件宽度设置为相同的设置,即 200dp,但出现在屏幕上时宽度不同?我想知道为什么?

我的 UI 由线性布局(垂直)和随后的线性布局(水平)行组成。线性水平布局各有 2 个 textView。一个包含标签,另一个包含文本框。

水平布局有设置match_parent。

我将每个标签设置为 200dp,并使用不同的背景颜色以便于查看。可以看到宽度不一样了

Red longer than green

width setting

这可能是由 layout_weight 属性引起的问题。我认为您将水平布局设置为 1,然后将标签和文本框设置为 1。这使得它忽略 200dp 规范,因此它使用标签字符串所需的 space('Login'、'domain'、'Password')。

要为标签使用 200dp 的 layout_width,请删除 layout_weight 属性。

或者,您也可以通过正确使用 layout_weight 将文本视图设置为使用屏幕的一定比例(相对大小)。