Android 文本视图垂直中心

Android 文本视图垂直中心,android,textview,Android,Textview,Andriod文本视图垂直中心问题 我的代码 <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="10dp" android:fontFamily="@font/googlesansbold" android:text="Tance" an

Andriod文本视图垂直中心问题

我的代码

<TextView
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_marginLeft="10dp"
       android:fontFamily="@font/googlesansbold"
       android:text="Tance"
       android:lineHeight="1dp"
       android:gravity="center_vertical"
       android:textColor="@android:color/white" />

而不是

android:gravity="center_vertical"
试用

android:layout_gravity="center_vertical"

因为父布局是水平方向的
线性布局
TextView
的大小是
wrap\u content

将此属性用于父视图布局,将用于
文本视图

android:gravity="center_vertical"

问题是每种字体都有额外的填充。你不可能轻易地去掉那个填充物

您可以编写自己的textView来扩展AppCompatTextView并覆盖onDraw。 最简单的方法就是使用它

使用:

您需要根据自己的喜好硬编码属性android:height=“dp”

<NoPaddingTextView
    android:layout_marginTop="18dp"
    android:background="#c1c1c1"
    android:height="16dp"
    android:includeFontPadding="false"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:gravity="center_vertical"
    android:lineHeight="1dp"
    android:text="Tance"/>


您需要发布xml文件的代码。所以我们可以有一些想法。请发布xml文件代码。这里是xml文件这里是xml文件驱动器。google.com/open?id=1V2HBf-pz093xQfVu4HKCiqzfbXp971FR@Thomas我看到了布局,使用这个属性,TextView是centered@Thomas您不需要在TextView中使用android:gravity=“center\u vertical”
,只需要在LinearLayout@Thomas不
android:gravity=“center | center_vertical”
,仅限
android:gravity=“center_vertical”