[Android布局学习系列]
1.Android 布局学习之——Layout(布局)详解一
2.Android 布局学习之——Layout(布局)详解二(常见布局和布局参数)
3.Android 布局学习之——LinearLayout的layout_weight属性
4.Android 布局学习之——LinearLayout属性baselineAligned的作用及baseline
1.分别是什么?
android:gravity :
定义了一个对象在X,Y坐标轴,在它自己的边界内,应该如何放置它的内容。是上(top)还是下(bottom),左(left)或是右(right)。
比如一个TextView,设置它的android:gravity,对它的内容的位置有影响。
android:layout_gravity :
标准的gravity常量,是子组件提供给它的父组件的。定义了子View在封闭的布局(layout)中在X,Y方向上应该如何被放置。
如一个方向是垂直的LinerLayout,布局里的TextView的layout_gravity对它在布局中的位置有影响。
如果需要设置多个gravity值,用"|"符号分隔。如
android:layout_gravity="right|bottom" android:gravity="right|bottom"
2.区别
看名字就能看出一些区别:android:layout_gravity和layout有关。
android:gravity 设置 View的内容的gravity。
android:layout_gravity 设置View或Layout的在它父布局中的gravity。
3.Demo
1 <?xml version="1.0" encoding="utf-8"?> 2 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:orientation="vertical" 4 android:layout_width="match_parent" 5 android:layout_height="match_parent"> 6 7 <LinearLayout 8 android:id="@+id/linearLayout" 9 android:layout_width="match_parent" 10 android:layout_height="150dp" 11 android:orientation="vertical"> 12 <TextView 13 android:layout_width="match_parent" 14 android:layout_height="50dp" 15 android:text="android:gravity用于设置View中内容相对于View组件的对齐方式"/> 16 <TextView 17 android:layout_width="match_parent" 18 android:layout_height="50dp" 19 android:text="android:gravity=center" 20 android:background="#ff0000" 21 android:gravity="center"/> 22 <TextView 23 android:layout_width="match_parent" 24 android:layout_height="50dp" 25 android:text="android:gravity=right|bottom" 26 android:background="#00ff00" 27 android:gravity="right|bottom" 28 /> 29 </LinearLayout> 30 <TextView 31 android:id="@+id/textView" 32 android:layout_width="match_parent" 33 android:layout_height="50dp" 34 android:layout_below="@id/linearLayout" 35 android:text="android:layout_gravity用于设置View组件相对于Container的对齐方式"/> 36 <LinearLayout 37 android:id="@+id/linearLayout1" 38 android:layout_width="match_parent" 39 android:layout_height="100dp" 40 android:layout_below="@id/textView" 41 android:orientation="vertical"> 42 <TextView 43 android:layout_width="wrap_content" 44 android:layout_height="wrap_content" 45 android:layout_gravity="left" 46 android:text="android:layout_gravity=left" 47 android:background="#ff0000" 48 /> 49 <TextView 50 android:layout_width="wrap_content" 51 android:layout_height="wrap_content" 52 android:layout_gravity="right" 53 android:text="android:layout_gravity=right" 54 android:background="#00ff00" 55 /> 56 </LinearLayout> 57 <LinearLayout 58 android:id="@+id/linearLayout2" 59 android:layout_width="match_parent" 60 android:layout_height="100dp" 61 android:layout_below="@id/linearLayout1" 62 android:orientation="horizontal"> 63 <TextView 64 android:layout_width="wrap_content" 65 android:layout_height="wrap_content" 66 android:layout_gravity="top" 67 android:text="android:layout_gravity=top" 68 android:background="#ff0000" 69 /> 70 <TextView 71 android:layout_width="wrap_content" 72 android:layout_height="wrap_content" 73 android:layout_gravity="bottom" 74 android:text="android:layout_gravity=bottom" 75 android:background="#00ff00" 76 /> 77 </LinearLayout> 78 </RelativeLayout>
效果:
原文地址:http://www.cnblogs.com/JohnTsai/p/4231729.html