我正在创建一个自定义对话框,下部有两个按钮。这是布局:
<?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="wrap_content"
android:background="@drawable/dialog_container">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/questiontitle"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:textSize="30sp"
android:text="@string/newquestion"
android:textStyle="bold"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/writequestion"
android:layout_centerHorizontal="true"
android:layout_below="@+id/questiontitle"
android:text="@string/writequestion"
android:textSize="20sp"/>
<EditText
android:id="@+id/question"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/writequestion"
android:layout_marginTop="30dp"
android:hint="@string/questionhint" />
<TextView
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_centerHorizontal="true"
android:layout_below="@+id/question"
android:layout_marginTop="60dp"
android:id="@+id/centerview"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/cancelbutton"
android:text="@string/cancel"
android:layout_below="@+id/question"
android:layout_toStartOf="@+id/centerview"
android:background="@drawable/buttonshape"
android:layout_marginTop="40dp"/>
<Button
android:id="@+id/okbutton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/question"
android:layout_toEndOf="@+id/centerview"
android:background="@drawable/buttonshape"
android:layout_alignParentRight="true"
android:text="@string/ok"
android:layout_marginTop="40dp"/>
</RelativeLayout>
在“布局设计”选项卡的Android Studio中,它显示得很完美,但是在手机(三星J7)中运行时,“确定”按钮填充了父级宽度...为什么?我希望按钮与RelativeLayout的底部对齐,一个在另一个的左侧。
谢谢。
答案 0 :(得分:0)
您遇到了一些错误的对齐方式,因此我为您修复了它们,通常,您确实以一种非常不错的方式完成了大部分工作。
对于以后的布局,我建议使用{{ 3}},它的确非常好,易于使用,并且能够响应不同的屏幕尺寸。
这是新的布局(我也在银河j7上进行了检查):
<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="wrap_content"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/questiontitle"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:textSize="30sp"
android:text="newquestion"
android:textStyle="bold"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/writequestion"
android:layout_centerHorizontal="true"
android:layout_below="@+id/questiontitle"
android:text="writequestion"
android:textSize="20sp"/>
<EditText
android:id="@+id/question"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/writequestion"
android:layout_marginTop="30dp"
android:hint="questionhint" />
<TextView
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_centerHorizontal="true"
android:layout_below="@+id/question"
android:layout_marginTop="60dp"
android:id="@+id/centerview"/>
<Button
android:id="@+id/cancelbutton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/question"
android:layout_marginTop="40dp"
android:layout_marginEnd="30dp"
android:layout_toEndOf="@+id/centerview"
android:text="cancel" />
<Button
android:id="@+id/okbutton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/question"
android:text="ok"
android:layout_toStartOf="@+id/centerview"
android:layout_marginTop="40dp"/>
</RelativeLayout>