gpt4 book ai didi

java - 为什么这些观点不一致?

转载 作者:搜寻专家 更新时间:2023-11-01 09:16:49 25 4
gpt4 key购买 nike

我不明白为什么我需要做些什么才能使 TableLayout 中的 View 完美对齐。

我有一个类似这样的布局:

<TableLayout android:id="@+id/keyboard"
android:layout_width="fill_parent"
android:layout_height="378px">
<TableRow android:layout_span="5" >
<TextView android:id="@+id/button20"
android:layout_width="63px"
android:layout_height="42px"
android:textSize="10"
android:text="L1" />
<TextView android:id="@+id/button21"
android:layout_width="63px"
android:layout_height="42px"
android:textSize="12"
android:text="L2" />
<TextView android:id="@+id/button22"
android:layout_width="63px"
android:layout_height="42px"
android:textSize="12"
android:text="L3" />
<TextView android:id="@+id/button23"
android:layout_width="63px"
android:layout_height="42px"
android:textSize="12"
android:text="L4" />
<TextView android:id="@+id/button24"
android:layout_width="63px"
android:layout_height="42px"
android:textSize="12"
android:text="L5" />
</TableRow>
</TableLayout>

现在,当绘制时,第一个 TextView 显示为比所有其他的 2 像素。覆盖 onLayout 方法;我看到 onLayout 被调用用于第一个 View :顶部 = 2 ;底部 = 44 ;而所有其他的都是 top = 0 ;底部 = 42。

只要字体大小与其他字体大小略有不同,就会发生这种情况;或者如果文本换行(因为它不适合宽度)。所有 TextView 都具有相同的尺寸;但有些显示略低于其他。

如果有区别,此布局位于 RelativeLayout 内。

我尝试了很多不同的组合,但总会出现一些差异。任何帮助将不胜感激。

谢谢!杰伊

最佳答案

看起来 TextView 在它们的基线上对齐。因此,如果文本较小,则其基线在 TextView 中会更高。因此,textview 将被定位得更低,以匹配其他 TextView 的基线和更高的文本。

要防止行中的基线对齐,请尝试将 TableRow 行更改为:

<TableRow android:layout_span="5" android:baselineAligned="false" >

缺点当然是文本可能看起来不再对齐了。

关于java - 为什么这些观点不一致?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4096356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com