【问题标题】:Android: Vertically Center TextView in LinearLayoutAndroid:在LinearLayout中垂直居中TextView
【发布时间】:2014-12-26 10:43:10
【问题描述】:

使用以下布局,我无法将 TextView 垂直居中:

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"    
    android:gravity="center_vertical"   
    android:background="#323331">

    <TextView
        android:id="@+id/title"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"  
        android:text="Hello World" 
        android:textColor="#FFFFFF" 
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:layout_gravity="center_vertical"       
        android:gravity="center_horizontal|center_vertical"             
        />     
</LinearLayout>

文本始终与 LinearLayout 的顶部对齐。
(如果重要,此布局用于 Activity 的标题)
如何以垂直居中方式对齐它?

【问题讨论】:

  • 对于线性布局,您使用的是 android:layout_height=“wrap_content”。将其更改为填充父级。
  • 否决了这个问题?为什么?

标签: android android-layout android-activity


【解决方案1】:

你的 LinearLayout 有 android:layout_height="wrap_content" 所以它适合你的 TextView 的高度。改变

android:layout_height="wrap_content"

android:layout_height="match_parent"

【讨论】:

    【解决方案2】:

    试试这个 安卓:layout_height="fill_parent"

         <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="#323331"
        android:gravity="center_vertical"
        android:orientation="horizontal" >
    
        <TextView
            android:id="@+id/title"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:gravity="center_horizontal|center_vertical"
            android:text="Hello World"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="#FFFFFF" />
    
    </LinearLayout>
    

    【讨论】:

      【解决方案3】:
      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:background="#323331"
      android:orientation="horizontal" >
      
      <TextView
          android:id="@+id/title"
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:gravity="center_vertical"
          android:text="Hello World"
          android:textAppearance="?android:attr/textAppearanceMedium"
          android:textColor="#FFFFFF" />
      
      </LinearLayout>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-08-15
        • 1970-01-01
        • 2011-12-18
        • 1970-01-01
        • 2013-10-25
        • 1970-01-01
        • 2023-04-11
        • 1970-01-01
        相关资源
        最近更新 更多