我的 Activity 只有一个 TextView,我试图让文本垂直居中,但它最终与底部对齐。我尝试更改几个属性但没有成功。这是我目前拥有的(Android 2.3):
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/llFlash"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="0dp" >
<TextView
android:id="@+id/tvFlash"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ff0000"
android:padding="0dp"
android:textStyle="bold"
android:includeFontPadding="false"
android:gravity="center_vertical"
android:layout_centerInParent="true" />
</RelativeLayout>
编辑: 我实际上是在代码中设置文本大小,它是一个很大的值。如果 textsize 增加到屏幕的宽度(在横向模式下),那么它看起来与屏幕底部对齐。但是,如果您使用正常的文本大小(如 20sp),它将显示为居中。这告诉我,当您将文本大小增加到非常大时,Android 似乎正在增加一些隐藏的内部填充(即使我确实将 includeFontPadding 设置为 false)。
最佳答案
我觉得不错,但是,
你为什么不用;
android:layout_centerVertical="true"
代替
android:gravity="center_vertical"
android:layout_centerInParent="true"
关于android - TextView 不会在父级中垂直居中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17962905/