相对布局无法正确对齐3个图像

时间:2013-12-24 23:49:19

标签: android uiimageview imageview relativelayout android-ui

我有一个RelativeLayout,我想用它来创建两个并排的ImageViews(h1和h2),另一个图像居中于顶层(ui3)

出于某种原因,使用以下内容时图像似乎无法正确对齐:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"

    tools:context=".Home" >

    <EditText
        android:id="@+id/et_user"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:layout_marginRight="78dp"
        android:layout_marginTop="195dp"
        android:ems="10" >

        <requestFocus />
    </EditText>

    <EditText
        android:id="@+id/et_pw"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/editText1"
        android:layout_below="@+id/editText1"
        android:layout_marginLeft="45dp"
        android:ems="10"
        android:inputType="textPassword" />

    <Button
        android:id="@+id/btn_login"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/editText1"
        android:layout_alignTop="@+id/editText2"
        android:layout_marginLeft="21dp"
        android:layout_marginTop="17dp"
        android:text="Button" />

    <Button
        android:id="@+id/btn_reg"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/button1"
        android:layout_below="@+id/button1"
        android:text="Button" />

    <ImageView
        android:id="@+id/ui3"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentLeft="true"
        android:layout_alignParentBottom="true"
        android:adjustViewBounds="true"
        android:src="@drawable/ui2" />

    <ImageView
        android:id="@+id/h2"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:layout_weight="1.0"
        android:layout_alignRight="@+id/header1"
        android:src="@drawable/h2" />

    <ImageView
        android:id="@+id/h1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
          android:layout_alignLeft="@+id/h2"
        android:layout_alignParentLeft="true"
        android:layout_weight="1.0"
        android:layout_alignParentTop="true"
        android:src="@drawable/h1" />

</RelativeLayout>

预期结果:

enter image description here

结果:

enter image description here

非常清楚:我只需要在3张单独的图像中创建一个看似实心的图像:

资源:

http://i.stack.imgur.com/pYZIt.jpg
http://i.stack.imgur.com/KzaYd.png
http://i.stack.imgur.com/hB9KS.png

1 个答案:

答案 0 :(得分:0)

代码中的问题 - 布局视图之间的循环引用。

问题1

此imageview采用完整的屏幕尺寸。

<ImageView
        android:id="@+id/ui3"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentLeft="true"
        android:layout_alignParentBottom="true"
        android:adjustViewBounds="true"
         />

问题2

此图像视图正在创建循环参考。

<ImageView
        android:id="@+id/h1"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
          android:layout_alignLeft="@+id/h2"
        android:layout_alignParentLeft="true"
        android:layout_weight="1.0"
        android:layout_alignParentTop="true"
         />