LinearLayout中组件右对齐
在LinearLayout中,如果将其定位方向设为横向排列:android:orientation="horizontal",那么这个布局中的控件将自左向右排列。
但有时会有这样的情况:行的左边有两个控制的同时,行的右边也有一个控制。
如图:
这怎么处理呢?
我们可以将右边的控件放在另一个LinearLayout中,同时将其对齐方式设为右对齐:android:gravity="right",还有一点,这个LinearLayout的宽度设为充满父控件: android:layout_width="fill_parent"。这样就行了。
完整的XML代码如下:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:background="@drawable/bg"
- android:orientation="horizontal" >
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="左边1" />
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="左边2" />
- <!-- 将TextView包在另一个LinearLayout中
- 注意android:layout_width和android:gravity这两个属性
- -->
- <LinearLayout
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:gravity="right" >
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_marginRight="10dp"
- android:text="右边" />
- </LinearLayout>
- </LinearLayout>