RelativeLayout编辑器和设备

时间:2018-02-10 17:22:40

标签: android android-layout android-button android-relativelayout

我试图在RelativeLayout中设置3个项目 - 一个ImageView,一个TextView和一个Button。我设法将布局左侧的ImageView和左侧TextView附近的ImageView放在一起。但是,我无法在布局的右侧正确设置按钮的位置。编辑器和我的设备中的位置不同(当我测试它时)。当我在编辑器中按照我想要的方式放置所有内容时,在设备上运行后它看起来并不相同。应该位于布局右侧的Button关闭屏幕。

例如this就是我在编辑器中看到的,this就是我在设备上看到的内容。如果我在编辑器中移动按钮,在应有的位置like this,那么它会在设备屏幕上显示like this

我还尝试使用LinearLayoutgravitylayout_gravityweight以及填充和边距的不同组合,但我无法使其工作,我不明白问题在哪里。

这是我的xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:padding="4dp">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/background" />

    <ImageView
        android:layout_width="55dp"
        android:layout_height="55dp"
        android:paddingBottom="3dp"
        android:paddingTop="3dp"
        android:src="@mipmap/help" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:paddingLeft="60dp"
        android:paddingTop="10dp"
        android:text="help"
        android:textColor="@color/mainWhite" />

    <Button
        android:id="@+id/helpButton"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_marginLeft="330dp"
        android:layout_marginTop="3dp"
        android:background="@mipmap/Continue" />
</RelativeLayout>

谢谢。

2 个答案:

答案 0 :(得分:1)

只需在右键

中使用android:layout_alignParentEnd="true"即可
    <Button
    android:id="@+id/helpButton"
    android:layout_width="35dp"
    android:layout_height="35dp"
    android:layout_marginTop="3dp"
    android:layout_alignParentEnd="true"
    android:background="@android:drawable/ic_input_add"/>

答案 1 :(得分:0)

您的完整布局应如下所示。您需要正确使用layout_alignParentLeftlayout_alignParentRight

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:layout_margin="5dp"
    android:background="@drawable/background"
    android:padding="4dp">

    <ImageView
        android:id="@+id/question_icon"
        android:layout_width="55dp"
        android:layout_height="55dp"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="8dp"
        android:padding="3dp"
        android:src="@mipmap/help" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:layout_marginLeft="16dp"
        android:layout_toRightOf="@+id/question_icon"
        android:text="Help"
        android:textColor="@android:color/white" />

    <Button
        android:id="@+id/helpButton"
        android:layout_width="35dp"
        android:layout_height="35dp"
        android:layout_alignParentRight="true"
        android:layout_marginRight="8dp"
        android:background="@mipmap/Continue" />
</RelativeLayout>