全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

android:layout_gravity和android:gravity的区别

1.首先来看看Android:layout_gravity和android:gravity的使用区别。

android:gravity:

这个是针对控件里的元素来说的,用来控制元素在该控件里的显示位置。例如,在一个Button按钮控件中设置如下两个属性,

android:gravity="left"和android:text="提交",这时Button上的文字“提交”将会位于Button的左部。

android:layout_gravity:

这个是针对控件本身而言,用来控制该控件在包含该控件的父控件中的位置。同样,当我们在Button按钮控件中设置android:layout_gravity="left"属性时,表示该Button按钮将位于界面的左部。

2.属性值:

这两个属性可选的值有:top、bottom、left、right、center_vertical、fill_vertical、center_horizontal、fill_horizontal、center、fill、clip_vertical。

一个属性可以包含多个值,需用“|”分开。其含义如下:

top 将对象放在其容器的顶部,不改变其大小.
bottom 将对象放在其容器的底部,不改变其大小.
left 将对象放在其容器的左侧,不改变其大小.
right 将对象放在其容器的右侧,不改变其大小.
center_vertical 将对象纵向居中,不改变其大小. 
垂直对齐方式:垂直方向上居中对齐。
fill_vertical 必要的时候增加对象的纵向大小,以完全充满其容器. 
垂直方向填充
center_horizontal 将对象横向居中,不改变其大小. 
水平对齐方式:水平方向上居中对齐
fill_horizontal 必要的时候增加对象的横向大小,以完全充满其容器. 
水平方向填充
center 将对象横纵居中,不改变其大小.
fill 必要的时候增加对象的横纵向大小,以完全充满其容器.
clip_vertical

附加选项,用于按照容器的边来剪切对象的顶部和/或底部的内容. 剪切基于其纵向对齐设置:顶部对齐时,剪切底部;底部对齐时剪切顶部;除此之外剪切顶部和底部.

垂直方向裁剪

clip_horizontal

附加选项,用于按照容器的边来剪切对象的左侧和/或右侧的内容. 剪切基于其横向对齐设置:左侧对齐时,剪切右侧;右侧对齐时剪切左侧;除此之外剪切左侧和右侧.

水平方向裁剪

我们主要来看看center_vertical和center_horizontal两个属性值,

center_vertical是指将对象在垂直方向上居中对齐,即在从上到下的方向上选择中间的位置放好;center_horizontal是指将对象水平方向上居中对齐,即在从左到右的方向上选择中间的位置放好

3.特殊情况

当我们采用LinearLayout布局时,有以下特殊情况需要我们注意:

(1)当 android:orientation="vertical"  时, android:layout_gravity只有水平方向的设置才起作用,垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的。

(2)当 android:orientation="horizontal" 时, android:layout_gravity只有垂直方向的设置才起作用,水平方向的设置不起作用。即:top,bottom,center_vertical 是生效的。

下面以一个例子说明:(本例来源于:http://blog.csdn.net/dekunchenivan/article/details/6718678)

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
 android:orientation="vertical" 
 android:layout_width="fill_parent" 
 android:layout_height="fill_parent" 
 > 
 <TextView 
 android:layout_width="100dip" 
 android:layout_height="100dip" 
 android:layout_gravity="bottom|center_horizontal" 
 android:gravity="center|bottom" 
 android:background="#00FF00" 
 android:text="@string/textview" 
 /> 
 
 <Button 
 android:layout_width="100dip" 
 android:layout_height="100dip" 
 android:layout_gravity="bottom|left" 
 android:gravity="left|top" 
 android:background="#FF0000" 
 android:text="@string/button" 
 /> 
</LinearLayout> 

其效果如图: 

在TextView中,我们设置了android:layout_gravity="bottom|center_horizontal"  ,但该TextView并没有显示在屏幕的下方正中央,表明只有center_horizontal属性起了作用,这正是因为我们使用了LinearLayout布局,并且其android:orientation="vertical",只有水平方向的设置才会起作用,其他方向则会失效。同样,Button也一样。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# layout_gravity  # gravity  # Android中gravity、layout_gravity、padding、margin的区别小结  # Android中gravity与layout_gravity的使用区别分析  # 不改变  # 放在  # 是指  # 来看看  # 当我们  # 即在  # 放好  # 不起作用  # 多个  # 将会  # 才会  # 这两个  # 可选  # 如图  # 则会  # 但该  # 需用  # 本例  # 正中央  # 从上到下 


相关文章: 开源网站制作软件,开源网站什么意思?  黑客如何通过漏洞一步步攻陷网站服务器?  制作充值网站的软件,做人力招聘为什么要自己交端口钱?  常州自助建站工具推荐:低成本搭建与模板选择技巧  ,有什么在线背英语单词效率比较高的网站?  如何在阿里云域名上完成建站全流程?  建站之星手机一键生成:多端自适应+小程序开发快速建站指南  建站之星多图banner生成与模板自定义指南  建站之星2.7模板快速切换与批量管理功能操作指南  网站制作说明怎么写,简述网页设计的流程并说明原因?  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  如何通过PHP快速构建高效问答网站功能?  北京网站制作网页,网站升级改版需要多久?  高防服务器:AI智能防御DDoS攻击与数据安全保障  建站之星体验版:智能建站系统+响应式设计,多端适配快速建站  如何快速搭建个人网站并优化SEO?  宝塔新建站点报错如何解决?  建站之星安装需要哪些步骤及注意事项?  名字制作网站免费,所有小说网站的名字?  深入理解Android中的xmlns:tools属性  高端建站如何打造兼具美学与转化的品牌官网?  昆明高端网站制作公司,昆明公租房申请网上登录入口?  制作网站公司那家好,网络公司是做什么的?  潍坊网站制作公司有哪些,潍坊哪家招聘网站好?  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  建站之星图片链接生成指南:自助建站与智能设计教程  建站之星云端配置指南:模板选择与SEO优化一键生成  如何快速生成凡客建站的专业级图册?  建站之星如何通过成品分离优化网站效率?  网站制作软件有哪些,制图软件有哪些?  网站好制作吗知乎,网站开发好学吗?有什么技巧?  红河网站制作公司,红河事业单位身份证如何上传?  台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?  如何通过.red域名打造高辨识度品牌网站?  如何用花生壳三步快速搭建专属网站?  大同网页,大同瑞慈医院官网?  开心动漫网站制作软件下载,十分开心动画为何停播?  Android使用GridView实现日历的简单功能  建站中国官网:模板定制+SEO优化+建站流程一站式指南  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  网站制作公司广州有几家,广州尚艺美发学校网站是多少?  C++时间戳转换成日期时间的步骤和示例代码  如何高效搭建专业期货交易平台网站?  免费网站制作appp,免费制作app哪个平台好?  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  如何在建站主机中优化服务器配置?  高端云建站费用究竟需要多少预算?  GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?  电脑免费海报制作网站推荐,招聘海报哪个网站多? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。