代码之家  ›  专栏  ›  技术社区  ›  Christian

在安卓系统中,通过分层布局与中心对齐

  •  0
  • Christian  · 技术社区  · 14 年前

    为什么下面的代码不与中心对齐? 我该怎么做才能修好它?

    <AbsoluteLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_gravity="center" 
        android:id="@+id/parent" 
        android:layout_height="match_parent" 
        android:layout_width="match_parent" 
        android:background="@color/blue">
    
    <RelativeLayout
        android:layout_height="wrap_content" 
        android:layout_gravity="center" 
        android:layout_width="wrap_content">
    
    
        <Button 
            android:layout_gravity="center" 
            android:id="@+id/Question01" 
            android:text="12 + 23" 
            android:gravity="center_vertical|center_horizontal"
            android:layout_height="70px" 
            android:lines="1" 
            android:textSize="40px" 
            android:layout_alignWithParentIfMissing="true" android:background="@drawable/orange_button" android:layout_margin="5px" android:layout_width="230px" android:textColor="@color/blue"/>
    
    
    </RelativeLayout>
    </AbsoluteLayout>
    
    1 回复  |  直到 14 年前
        1
  •  3
  •   Konstantin Burov    14 年前

    好, android:layout_gravity 不是关于子视图的定位,而是关于当前视图在其父视图中的定位。尝试使用android:gravity AbsoluteLayout (也可以切换到 FrameLayout 而不是阿卜杜拉)。为了 RelativeLayout 使用 android:layout_centerInParent="true" 在按钮上。

    <AbsoluteLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:gravity="center" 
    android:id="@+id/parent" 
    android:layout_height="match_parent" 
    android:layout_width="match_parent" 
    android:background="@color/blue">
    <RelativeLayout
        android:layout_height="wrap_content" 
        android:layout_width="wrap_content">
    <Button 
        android:layout_gravity="center" 
        android:id="@+id/Question01" 
        android:text="12 + 23" 
        android:gravity="center_vertical|center_horizontal"
        android:layout_height="70px" 
        android:lines="1" 
        android:textSize="40px" 
        android:layout_alignWithParentIfMissing="true"
        android:background="@drawable/orange_button" 
        android:layout_margin="5px" android:layout_width="230px" 
        android:textColor="@color/blue"
        android:layout_centerInParent="true"/>
    </RelativeLayout>
    </AbsoluteLayout>