我在Android中有一个多行TextView。它是LinearLayout的子代。它已经水平居中,我也希望它内部的文本居中。
以下是我现在的情况:
_ _ _ _ _ _| aaaaaaaaaaaaaaaaaaaaa
_ _ _ _ _ _| aaaaaaaa
_ _ _ _ _ _| aaaaaaaaaaaaaa
我想要的是:
_ _ _ _ _ _| aaaaaaaaaaaaaaaaaaaaa
_ _ _ _ _ _| aaaaaaaa
_ _ _ _ _ _| aaaaaaaaaaaaaa
其中:
_ _ _ _ = TextView一侧的空格
| = TextView边缘
答案 0 :(得分:148)
您是否尝试了gravity
上的TextView
属性?
android:gravity="center"
并确保使用android:gravity
而非android:layout_gravity
。
答案 1 :(得分:13)
答案 2 :(得分:1)
是的,使用 android:gravity 属性来更改视图中数据的位置。
答案 3 :(得分:1)
gravity属性是Alignment的更新。重力可以在属性检查器中使用,并且可以做到;
android:gravity="center"
答案 4 :(得分:0)
如果您只想在 textView 中对齐文本,那么 textAlignment
是比重力更好的选择。
为 android:textAlignment="center"
添加 Center
为 android:textAlignment="textStart"
添加 Left
为 android:textAlignment="textEnd"
添加 Right
答案 5 :(得分:-1)
按以下方式在strings.xml中创建文本(您希望将其设置为TextView):
<string name="content">
<center>Your text goes here.</center>
</string>
并在TextView中添加以下属性:
<TextView
...
android:text="@string/content"/>
它将文本水平居中放置在TextView中。