android布局之重心Gravity
2016-04-21 14:16
274 查看
重心Gravity的属性主要有两类:一个是android:gravity,另一个是android:layout_gravity。它们在使用上区别如下:
android:gravity:
一般用在布局中,设置的是控件自身里面的内容位置。
1.当需要设置多个gravity属性时,可以用符号”|”隔开。比如:
android:gravity="center_vertical|center_horizontal" 等价于android:gravity="center"
2.gravity属性的设置是否生效也跟orientation属性有关,比如:当 android:orientation="vertical" 时, 只有水平方向的设置才起 作用,垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的。当 android:orientation="horizontal"
时, 只有垂直方向的设置才起作用,水平方向的设置不起作用。即:top,bottom,center_vertical 是生效的。
android:layout_gravity:
一般用于普通控件中,设置的是控件自身在父控件中的位置。
1. 当我们的layout中设置了gravity后,此layout下的控件会依据此gravity属性调整自身位置。但是当layout中的控件设置了layout_gravity,那么即便是冲突也会依据layout_gravity属性值调整自身。
2. layout_gravity属性的设置如gravity一般,是否生效也跟orientation属性有关
gravity与layout_gravity基本属性一样,主要属性值如下:
top 将对象放在其容器的顶部,不改变其大小.
bottom 将对象放在其容器的底部,不改变其大小.
left 将对象放在其容器的左侧,不改变其大小.
right 将对象放在其容器的右侧,不改变其大小.
center_vertical
将对象纵向居中,不改变其大小.垂直对齐方式:垂直方向上居中对齐。
fill_vertical
必要的时候增加对象的纵向大小,以完全充满其容器.垂直方向填充
center_horizontal
将对象横向居中,不改变其大小.水平对齐方式:水平方向上居中对齐
fill_horizontal
必要的时候增加对象的横向大小,以完全充满其容器.
center
将对象横纵居中,不改变其大小.
fill
必要的时候增加对象的横纵向大小,以完全充满其容器.
clip_vertical
附加选项,用于按照容器的边来剪切对象的顶部和/或底部的内容.
剪切基于其纵向对齐设置:顶部对齐时,剪切底部;底部对齐时剪切顶部;
除此之外剪切顶部和底部.垂直方向裁剪
clip_horizontal
附加选项,用于按照容器的边来剪切对象的左侧和/或右侧的内容.
剪切基于其横向对齐设置:左侧对齐时,剪切右侧;右侧对齐时剪切左侧;
除此之外剪切左侧和右侧.水平方向裁剪
android:gravity:
一般用在布局中,设置的是控件自身里面的内容位置。
1.当需要设置多个gravity属性时,可以用符号”|”隔开。比如:
android:gravity="center_vertical|center_horizontal" 等价于android:gravity="center"
2.gravity属性的设置是否生效也跟orientation属性有关,比如:当 android:orientation="vertical" 时, 只有水平方向的设置才起 作用,垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的。当 android:orientation="horizontal"
时, 只有垂直方向的设置才起作用,水平方向的设置不起作用。即:top,bottom,center_vertical 是生效的。
android:layout_gravity:
一般用于普通控件中,设置的是控件自身在父控件中的位置。
1. 当我们的layout中设置了gravity后,此layout下的控件会依据此gravity属性调整自身位置。但是当layout中的控件设置了layout_gravity,那么即便是冲突也会依据layout_gravity属性值调整自身。
2. layout_gravity属性的设置如gravity一般,是否生效也跟orientation属性有关
gravity与layout_gravity基本属性一样,主要属性值如下:
top 将对象放在其容器的顶部,不改变其大小.
bottom 将对象放在其容器的底部,不改变其大小.
left 将对象放在其容器的左侧,不改变其大小.
right 将对象放在其容器的右侧,不改变其大小.
center_vertical
将对象纵向居中,不改变其大小.垂直对齐方式:垂直方向上居中对齐。
fill_vertical
必要的时候增加对象的纵向大小,以完全充满其容器.垂直方向填充
center_horizontal
将对象横向居中,不改变其大小.水平对齐方式:水平方向上居中对齐
fill_horizontal
必要的时候增加对象的横向大小,以完全充满其容器.
center
将对象横纵居中,不改变其大小.
fill
必要的时候增加对象的横纵向大小,以完全充满其容器.
clip_vertical
附加选项,用于按照容器的边来剪切对象的顶部和/或底部的内容.
剪切基于其纵向对齐设置:顶部对齐时,剪切底部;底部对齐时剪切顶部;
除此之外剪切顶部和底部.垂直方向裁剪
clip_horizontal
附加选项,用于按照容器的边来剪切对象的左侧和/或右侧的内容.
剪切基于其横向对齐设置:左侧对齐时,剪切右侧;右侧对齐时剪切左侧;
除此之外剪切左侧和右侧.水平方向裁剪
相关文章推荐
- Android异步消息处理机制
- 韩国 TmaxSoft 发布操作系统挑战微软,兼容 Android 和 iOS
- 由UI刷新谈到线程安全和Android单线程模型
- android 进程优先级
- 读《包建强:为什么我说Android插件化从入门到放弃》感悟
- android_关于Activity生命周期设计交互的几个问题
- Android应用开发 推送理解析极光推送使用详解
- Android DatePicker与TimePicker 日期时间弹出工具类
- Android fragment
- Android_实用技术(2)—— AsyncTask 使用方法
- android studio 在线安装SDK
- android学习笔记
- android之jsoup解决修改html
- Android横竖屏切换总结
- 那些Android小经验
- Android自定义控件View(一)自绘控件
- Android 常用的adb命令
- Android中的Service 与 Thread 的区别
- 【Android】html转义字符
- 自定义View——利用下拉刷新组件实现上拉加载