Android布局学习——android:gravity和android:layout_gravity的区别
16lz
2021-01-26
[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 <TextView13 android:layout_width="match_parent"14 android:layout_height="50dp"15 android:text="android:gravity用于设置View中内容相对于View组件的对齐方式"/>16 <TextView17 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 <TextView23 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 <TextView31 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 <LinearLayout37 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 <TextView43 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 <TextView50 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 <LinearLayout58 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 <TextView64 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 <TextView71 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>
效果:
更多相关文章
- webview 设定和使用缓存来获取网页中的js,css和图片资源
- android 学习笔记(1)
- android 通过主题设置activity统一切换动画
- 【学习清单】我的Android学习清单
- Android(安卓)EditTextView 设置输入英文字母全部大写
- Android应用开发UI(登录对话框)
- android实现对导航Tab设置下划线选中效果
- EditText属性大全详解
- Android布局管理器-使用FrameLayout帧布局管理器显示层叠的正方