<?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:orientation="horizontal" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="100dp"
android:layout_gravity="center_vertical"
android:gravity="center_vertical"
android:orientation="horizontal" >
<TextView
android:id="@+id/input"
android:layout_width="100dp"
android:layout_height="fill_parent"
android:background="@drawable/input_border"
android:text="Left" />
<TextView
android:id="@+id/input"
android:layout_width="60dp"
android:layout_height="40dp"
android:layout_marginLeft="10dp"
android:background="@drawable/input_border"
android:text="Right" />
</LinearLayout>
</LinearLayout>
如果没有android:gravity="center_vertical",则效果如下
如果没有android:layout_gravity="center_vertical",则效果如下
layout_gravity 表示组件自身在父组件中的位置
gravity 表示组件中的子组件在该组件中的位置
另layout_gravity有一个重要的总结:
对于 LinearLayout
当 android:orientation="vertical" 时, 只有水平方向的设置才起作用,垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的。
当 android:orientation="horizontal" 时, 只有垂直方向的设置才起作用,水平方向的设置不起作用。即:top,bottom,center_vertical 是生效的。