2016-07-25 97 views
1

我正在使用一些LinearLayouts,并且无法使项目居中。在LinearLayout中定位项目

这里是我的代码块:

<LinearLayout 
     android:id="@+id/title_container" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <ImageView 
      android:id="@+id/avatar" 
      android:visibility="gone" 
      android:layout_gravity="center_vertical"/> 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_gravity="center_vertical" 
      android:layout_height="wrap_content" 
      android:orientation="vertical"> 

      <TextView 
       android:id="@+id/title" 
       android:layout_gravity="center_vertical" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center_vertical" 
       android:background="@drawable/touch_clear_bg" /> 

      <TextView 
       android:id="@+id/subtitle" 
       android:layout_gravity="center_vertical" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center_vertical" 
       android:visibility="gone"/> 
     </LinearLayout> 

    </LinearLayout> 

所以我想ImageViewnested LinearLayouttitle_container,这是一个水平LinearLayout垂直居中

有没有理由为什么我的方法不工作?

+0

尝试在嵌套的LinearLayout PARAMS重力更换layout_gravity –

+0

添加LA yout_gravity =“中心”在根线性布局 –

回答

0

类型

<LinearLayout android:id="@+id/title_container" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="center" android:gravity="center">

这将使整个布局在中心

1

您必须设置 android:gravity="center_vertical" 只有在父母的LinearLayout(title_container)。

而且你可以在这里看到的代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/title_container" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:gravity="center_vertical"> 

    <ImageView 
     android:id="@+id/avatar" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:visibility="gone" /> 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="vertical"> 

     <TextView 
      android:id="@+id/title" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:background="@drawable/touch_clear_bg" /> 

     <TextView 
      android:id="@+id/subtitle" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:visibility="gone" /> 
    </LinearLayout> 

</LinearLayout> 
1

变化

android:layout_gravity="center_vertical" 

android:layout_gravity="center"