在相对布局中,图像根据您的xml文件级联在另一个上面。你如何表明最顶层的图像应该是什么?
有没有办法在代码而不是xml中执行此操作?
我附加了我的XML文件以供参考:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
>
<ImageView
android:id="@+id/img1"
android:src="@drawable/payarrow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<ImageView
android:id="@+id/img2"
android:src="@drawable/chargearrow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/landingDockLeft"
android:src="@drawable/landingdock"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/landingDockRight"
android:src="@drawable/landingdock"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
答案 0 :(得分:1)
在xml中,您可以使用layout_alignParentTop="true"
将视图放在最顶层。然后自由使用layout_below="@+id/id_of_view_to_be_below"
以确保视图始终位于顶视图之下。
在代码中,您必须将RelativeLayout.LayoutParams与相关属性一起使用,并将它们应用于子视图。
xml中的示例:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
>
<ImageView
android:id="@+id/img1"
android:src="@drawable/payarrow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"/>
<ImageView
android:id="@+id/img2"
android:src="@drawable/chargearrow"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/img1"
/>
<ImageView
android:id="@+id/landingDockLeft"
android:src="@drawable/landingdock"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/img2"
/>
<ImageView
android:id="@+id/landingDockRight"
android:src="@drawable/landingdock"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/landingDockLeft"
/>
这会将它们全部堆叠在一起,img1
视图位于整个事物的最顶端。
编码方式为here。
答案 1 :(得分:0)
android:layout_alignParentTop =“true”
答案 2 :(得分:0)
这是一个例子: 1)如果你把
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
>
<ImageView
android:id="@+id/img1"
/>
<ImageView
android:id="@+id/img2"
/>
ID为img1的ImageView将位于带有id img2的ImageView下。
2)如果你想将带有id img2的TextView放在ImageView下,你会这样做
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
>
<ImageView
android:id="@+id/img1"
/>
<TextView
android:id="@+id/txt1"
/>
<ImageView
android:id="@+id/img2"
/>
所以这是订购的问题。