【问题标题】:Unable to center layout in android无法在android中居中布局
【发布时间】:2014-05-06 11:43:04
【问题描述】:

我试图在线性布局中居中相对布局。但我无法做到。这是我的完整代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".Profile" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:text="@string/profile"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textSize="22sp"
        android:textStyle="bold" />

    <ScrollView 
        android:id="@+id/ScrollView01"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fillViewport="true"
        android:scrollbars="none"
        android:layout_below="@+id/textView1">

     <LinearLayout
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_marginTop="20dp" 
         android:gravity="center"
         android:orientation="vertical">

     <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_gravity="center">


    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="15dp"
        android:text="@string/erected"
        android:textSize="15sp"
        android:textStyle="bold"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView3"
        android:layout_below="@+id/textView3"
        android:layout_marginTop="12dp"
        android:text="@string/population"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textSize="15sp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView2"
        android:layout_below="@+id/textView2"
        android:text="@string/year"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textSize="14sp" />

    <TextView
        android:id="@+id/textView5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView4"
        android:layout_below="@+id/textView4"
        android:text="@string/pop"
        android:textSize="14sp"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/textView6"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView5"
        android:layout_below="@+id/textView5"
        android:layout_marginTop="14dp"
        android:text="@string/sun"
        android:textSize="15sp"
        android:textStyle="bold"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/textView7"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView6"
        android:layout_below="@+id/textView6"
        android:text="@string/address"
        android:textSize="14sp"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/textView8"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView7"
        android:layout_below="@+id/textView7"
        android:text="@string/team"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:layout_marginTop="14dp"
        android:textSize="15sp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/textView9"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView8"
        android:layout_below="@+id/textView8"
        android:text="@string/francis"
        android:textSize="14sp"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/textView10"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView9"
        android:layout_below="@+id/textView9"
        android:text="@string/lincoln"
        android:textSize="14sp"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    </RelativeLayout>
    </LinearLayout>
</ScrollView>
</RelativeLayout>

我在代码中做错了什么..??我也试过 android:layout_gravity="center" 但它不起作用..请告诉我哪里出错了..

【问题讨论】:

  • 填充的值是多少?可以加个截图吗?
  • 因为你的相对布局是 match_parent。让它 wrap_content

标签: android xml scrollview android-linearlayout android-relativelayout


【解决方案1】:

对于文本视图,您可以指定以下内容,

            android:layout_centerHorizontal="true"

【讨论】:

    【解决方案2】:

    试试这个布局有点改变...

        <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".Profile" >
    
    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:text="@string/profile"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textSize="22sp"
        android:textStyle="bold" />
    
    <ScrollView
        android:id="@+id/ScrollView01"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@+id/textView1"
        android:fillViewport="true"
        android:scrollbars="none" >
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp"
            android:gravity="center"
            android:orientation="vertical" >
    
            <RelativeLayout
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_gravity="center" >
    
                <TextView
                    android:id="@+id/textView2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="15dp"
                    android:text="@string/erected"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textSize="15sp"
                    android:textStyle="bold" />
    
                <TextView
                    android:id="@+id/textView4"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignLeft="@+id/textView3"
                    android:layout_below="@+id/textView3"
                    android:layout_marginTop="12dp"
                    android:text="@string/population"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textSize="15sp"
                    android:textStyle="bold" />
    
                <TextView
                    android:id="@+id/textView3"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignLeft="@+id/textView2"
                    android:layout_below="@+id/textView2"
                    android:text="@string/year"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textSize="14sp" />
    
                <TextView
                    android:id="@+id/textView5"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignLeft="@+id/textView4"
                    android:layout_below="@+id/textView4"
                    android:text="@string/pop"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textSize="14sp" />
    
                <TextView
                    android:id="@+id/textView6"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignLeft="@+id/textView5"
                    android:layout_below="@+id/textView5"
                    android:layout_marginTop="14dp"
                    android:text="@string/sun"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textSize="15sp"
                    android:textStyle="bold" />
    
                <TextView
                    android:id="@+id/textView7"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignLeft="@+id/textView6"
                    android:layout_below="@+id/textView6"
                    android:text="@string/address"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textSize="14sp" />
    
                <TextView
                    android:id="@+id/textView8"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignLeft="@+id/textView7"
                    android:layout_below="@+id/textView7"
                    android:layout_marginTop="14dp"
                    android:text="@string/team"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textSize="15sp"
                    android:textStyle="bold" />
    
                <TextView
                    android:id="@+id/textView9"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignLeft="@+id/textView8"
                    android:layout_below="@+id/textView8"
                    android:text="@string/francis"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textSize="14sp" />
    
                <TextView
                    android:id="@+id/textView10"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_alignLeft="@+id/textView9"
                    android:layout_below="@+id/textView9"
                    android:text="@string/lincoln"
                    android:textAppearance="?android:attr/textAppearanceMedium"
                    android:textSize="14sp" />
            </RelativeLayout>
        </LinearLayout>
    </ScrollView>
    

    【讨论】:

      【解决方案3】:

      将相对布局的宽度更改为 wrap_content,将线性布局的宽度更改为 match_parent。然后对于相对布局使用

      android:layout_gravity="center"
      

      【讨论】:

        【解决方案4】:

        只需从以下位置更改 LinearLayout 的重力:

        android:gravity="center"
        

        android:layout_gravity="center"
        

        编辑: 看看我已经实现的这段代码:

         <?xml version="1.0" encoding="utf-8"?>
        <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:paddingBottom="@dimen/activity_vertical_margin"
            android:paddingLeft="@dimen/activity_horizontal_margin"
            android:paddingRight="@dimen/activity_horizontal_margin"
            android:paddingTop="@dimen/activity_vertical_margin"
            tools:context=".Profile" >
        
            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentTop="true"
                android:layout_centerHorizontal="true"
                android:text="profile"
                android:textAppearance="?android:attr/textAppearanceLarge"
                android:textSize="22sp"
                android:textStyle="bold" />
        
            <ScrollView
                android:id="@+id/ScrollView01"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_below="@+id/textView1"
                android:fillViewport="true"
                android:scrollbars="none" >
        
                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center"
                    android:layout_marginTop="20dp"
                    android:orientation="vertical" >
        
                    <RelativeLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:layout_gravity="center" >
        
                        <TextView
                            android:id="@+id/textView2"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_marginTop="15dp"
                            android:text="erected"
                            android:textAppearance="?android:attr/textAppearanceMedium"
                            android:textSize="15sp"
                            android:textStyle="bold" />
        
                        <TextView
                            android:id="@+id/textView4"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignLeft="@+id/textView3"
                            android:layout_below="@+id/textView3"
                            android:layout_marginTop="12dp"
                            android:text="population"
                            android:textAppearance="?android:attr/textAppearanceMedium"
                            android:textSize="15sp"
                            android:textStyle="bold" />
        
                        <TextView
                            android:id="@+id/textView3"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignLeft="@+id/textView2"
                            android:layout_below="@+id/textView2"
                            android:text="@string/year"
                            android:textAppearance="?android:attr/textAppearanceMedium"
                            android:textSize="14sp" />
        
                        <TextView
                            android:id="@+id/textView5"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignLeft="@+id/textView4"
                            android:layout_below="@+id/textView4"
                            android:text="pop"
                            android:textAppearance="?android:attr/textAppearanceMedium"
                            android:textSize="14sp" />
        
                        <TextView
                            android:id="@+id/textView6"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignLeft="@+id/textView5"
                            android:layout_below="@+id/textView5"
                            android:layout_marginTop="14dp"
                            android:text="sun"
                            android:textAppearance="?android:attr/textAppearanceMedium"
                            android:textSize="15sp"
                            android:textStyle="bold" />
        
                        <TextView
                            android:id="@+id/textView7"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignLeft="@+id/textView6"
                            android:layout_below="@+id/textView6"
                            android:text="address"
                            android:textAppearance="?android:attr/textAppearanceMedium"
                            android:textSize="14sp" />
        
                        <TextView
                            android:id="@+id/textView8"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignLeft="@+id/textView7"
                            android:layout_below="@+id/textView7"
                            android:layout_marginTop="14dp"
                            android:text="team"
                            android:textAppearance="?android:attr/textAppearanceMedium"
                            android:textSize="15sp"
                            android:textStyle="bold" />
        
                        <TextView
                            android:id="@+id/textView9"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignLeft="@+id/textView8"
                            android:layout_below="@+id/textView8"
                            android:text="francis"
                            android:textAppearance="?android:attr/textAppearanceMedium"
                            android:textSize="14sp" />
        
                        <TextView
                            android:id="@+id/textView10"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_alignLeft="@+id/textView9"
                            android:layout_below="@+id/textView9"
                            android:text="lincoln"
                            android:textAppearance="?android:attr/textAppearanceMedium"
                            android:textSize="14sp" />
                    </RelativeLayout>
                </LinearLayout>
            </ScrollView>
        
        </RelativeLayout>
        

        对我来说很好用。

        【讨论】:

          猜你喜欢
          • 2021-07-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-04-10
          • 2014-07-17
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多