<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >
    
    <Button
        android:id="@+id/ok"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="@string/ok" 
        />
    
    <Button
        android:id="@+id/cancel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/ok"
        android:text="@string/cancel" 
        />
    
</RelativeLayout>
上面设置,OK是靠中,cancel在旁边,两者总体来看是不靠中的。请问,这种情况如何设置?

解决方案 »

  1.   

    <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=".MainActivity" >    <Button 
            android:id="@+id/ok"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="ok"
            android:layout_centerInParent="true"/>    <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@+id/ok"
            android:layout_alignBottom="@+id/ok"
            android:layout_toRightOf="@+id/ok"
            android:text="cancel" /></RelativeLayout>试试看
      

  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"
        tools:context=".MainActivity" >    <Button 
            android:id="@+id/ok"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="ok"
            android:layout_centerInParent="true"/>    <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@+id/ok"
            android:layout_alignBottom="@+id/ok"
            android:layout_toRightOf="@+id/ok"
            android:text="cancel" /></RelativeLayout>精简的 忘了会自动生成一些属性 sorry
      

  3.   

    将2个button放在一个LinearLayout里面 设置属性android:layout_gravity="center"
    android:orientation="horizontal"或者根据需要android:layout_gravity设置成center_horizontal或者center_vertical
      

  4.   

    3楼正解,,不过是android:gravity="center"
    同时父元素设置为:android:layout_width="match_parent"
      

  5.   

    你可以在两个button外面在套一层linerlayout或relativelayout,并设置居中
      

  6.   

    <?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"
        tools:context=".MainActivity">
        <LinearLayout 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true" 
            android:layout_centerHorizontal="true">
            
        <Button 
            android:id="@+id/ok"
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:text="ok"
            />    <Button
            android:layout_width="80dp"
            android:layout_height="wrap_content"
            android:layout_alignBaseline="@+id/ok"
            android:layout_alignBottom="@+id/ok"
            android:layout_toRightOf="@+id/ok"
        android:text="cancel" 
            />
        </LinearLayout>
    </RelativeLayout>
      

  7.   

    用LinearLayout 嵌套一个button ,然后设置下就可以了。 
      

  8.   

    android:layout_centerInParent="true" 这个移到父容器RelativeLayout上就好了