在开发中推荐尽量使用RelativeLayout可以增强其适应不同屏幕的灵活性。该布局根据widgets之间关系和widget与父容器之间的关系来确定布局。例如可以设置A在父容器的底部对齐,B在A的上方。
设置RelativeLayout的两大类主要的属性,如下:
1.widget与所在容器(Container)的关系 android:layout_alignParentTop android:layout_alignParentBottom android:layout_alignParentLeft android:layout_centerHorizontal ......
2.widgets之间关系 android:layout_above android:layout_below android:layout_toLeft android:layout_toRight android:layout_alignTop ......
注意:widgets的出现先后顺序值得注意。被参照的widget必须保证已经出现了的。
【效果图】
【代码要点】
main.xml
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content" android:padding="5px" > <TextView android:id="@+id/label" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="URL:" android:paddingTop="10px" /> <EditText android:id="@+id/entry" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_toRightOf="@id/label" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="OK" android:layout_below="@id/entry" android:layout_alignRight="@id/entry" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Cancel" android:layout_toLeftOf="@+id/button1" android:layout_alignBottom="@+id/button1" /> </RelativeLayout>