android:layout_gravity跟android:gravity的理解

例子1:android:gravity="right",是对单个View,让View的内容右对齐。

<?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:gravity="right" >

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

</LinearLayout>

button会在LinearLayout的右边。

 

例子2:android:layout_gravity="right",是对容器的,让容器中的View右对齐。

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="left"
        android:text="TextView" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:text="TextView" />

</FrameLayout>

显示效果是,textview1靠左,textview2靠右。

注意:我这里用的是FrameLayout。如果用LinearLayout,

  当android:orientation="horizontal" 时,只能在垂直方向对齐,水平方向是从左到右的。

  当android:orientation="vertical" 时,只能在水平方向对齐,竖直方向是从上到下的。

 

posted @ 2012-07-06 22:35  垚淼  阅读(1897)  评论(0编辑  收藏  举报