我在水平LinearLayout中有一个带有2个TextView的视图,每个视图的权重为1.
第二个TextView是这样的:
<TextView
android:id="@+id/info_button"
style="@style/TextBlue"
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/bg_ten_percent_black_selector"
android:layout_height="@dimen/card_button_height"
android:text="@string/shop_info"
android:gravity="center"
/>
由于某种原因,文本在渲染时不会水平居中。但是,如果我对它进行了触摸,它就会居中。
我有一个修复,我把它包装在一个额外的LinearLayout中,它给出了权重,并将TextView置于其中,但我想知道为什么这个解决方法在没有这个时有效。
此外,这里可能需要哪些额外信息,因为这种居中文本方法通常有效。视图被夸大并添加为ListView标题。
答案 0 :(得分:1)
在您的案例中,您要找的是textAlignment
:
android:textAlignment="center"
答案 1 :(得分:0)
尝试使用textview属性中的center_vertical
和center_horizontal
android:gravity="center_vertical|center_horizontal"
答案 2 :(得分:0)
我怀疑你的意思是layout_gravity
,而不是gravity