我有一个问题,在相对布局的末尾以OK按钮为中心,我检查了很多类似的问题,但找不到我的错误。无论我尝试什么,OK按钮仍然偏离中心。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/frag_choix_surface"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:gravity="center"
android:orientation="vertical" >
<TextView
android:id="@+id/textViewNbPieces"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:text=""
android:textStyle="bold" />
<LinearLayout
android:id="@+id/pieces"
android:layout_marginTop="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textViewSurface"
android:gravity="center"
>
<TextView
android:id="@+id/textViewChmin"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="30dp"
android:layout_marginRight="10dp"
android:gravity="center"
android:text="min :" />
<kankan.wheel.widget.WheelView android:id="@+id/nb_piece_min"
android:layout_height="wrap_content"
android:layout_width="50dp"/>
<TextView
android:id="@+id/textViewChmax"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:gravity="center"
android:text="max :" >
</TextView>
<kankan.wheel.widget.WheelView android:id="@+id/nb_piece_max"
android:layout_height="wrap_content"
android:layout_width="50dp"
android:layout_marginRight="40dp"/>
</LinearLayout>
<Button
android:id="@+id/buttonOkNbPieces"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/pieces"
android:layout_marginTop="20dp"
android:text="OK" />
</RelativeLayout>
抱歉,我无法提供截图,我是该网站的新手,并且没有任何代表! 有什么想法吗?
答案 0 :(得分:4)
在RelativeLayout
中,您必须使用android:layout_centerHorizontal
,android:layout_centerVertical
或android:layout_centerInParent
属性。
将xml的按钮部分更改为:
<Button
android:id="@+id/buttonOkNbPieces"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/pieces"
android:layout_marginTop="20dp"
android:layout_centerHorizontal="true"
android:text="OK" />
从父android:gravity
中删除属性android:layout_marginLeft
,android:layout_marginRight
和RelativeLayout
,这些属性会影响内部项目的中心位置。所以RelativeLayout
应该像这样定义:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/frag_choix_surface"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp" >
答案 1 :(得分:0)
Hope i answered your question.
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/frag_choix_surface"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:layout_marginBottom="10dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:orientation="vertical" >
<TextView
android:id="@+id/textViewNbPieces"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
android:text=""
android:textStyle="bold" />
<LinearLayout
android:id="@+id/pieces"
android:layout_marginTop="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textViewSurface"
android:gravity="center"
>
<TextView
android:id="@+id/textViewChmin"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="30dp"
android:layout_marginRight="10dp"
android:gravity="center"
android:text="min :" />
<kankan.wheel.widget.WheelView android:id="@+id/nb_piece_min"
android:layout_height="wrap_content"
android:layout_width="50dp"/>
<TextView
android:id="@+id/textViewChmax"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:gravity="center"
android:text="max :" >
</TextView>
<kankan.wheel.widget.WheelView android:id="@+id/nb_piece_max"
android:layout_height="wrap_content"
android:layout_width="50dp"
android:layout_marginRight="40dp"/>
</LinearLayout>
<Button
android:layout_marginLeft="111dp"
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/pieces"
android:layout_marginTop="14dp"
android:text="Button" />
</RelativeLayout>