Android界面布局属性layout_gravity和gravity的区别

Android界面布局属性layout_gravity和gravity的区别一、layout_gravity和gravity的作用1、android:layout_gravity是设置该控件相对于父容器对齐方式;2、android:gravity是设置子元素在该容器内的对齐方式。3、layout_gravity和gravity可以设置的值:top、bottom、left、right、center_vertical、fill_vertical、center_horizontal、fill_horizontal、center、fill、clip_vertical。(一个属性可以包

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、layout_gravity和gravity的作用

1、android:layout_gravity是设置该控件相对于父容器对齐方式;
2、android:gravity是设置子元素在该容器内的对齐方式。
3、layout_gravity和gravity可以设置的值:top、bottom、left、right、center_vertical、fill_vertical、center_horizontal、fill_horizontal、center、fill、clip_vertical。(一个属性可以包含多个值,需用 “|” 分开),其具体作用如下:
在这里插入图片描述
二、layout_gravity和gravity在各布局中的使用区别

1、相对布局(RelativeLayout)

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity">

    <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:text="Hello Android!"/>
    <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:text="Hello World!"/>
</RelativeLayout>

效果图如下:
在这里插入图片描述
在相对布局中layout_gravity和gravity不起任何作用

2、线性布局(LinearLayout )
(1)当我们采用垂直排列( android:orientation=“vertical” )时,

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity">

    <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:text="Hello Android!"/>

</LinearLayout>

效果图如下:
在这里插入图片描述

符合我们预期的效果,当我们将 android:layout_gravity=“center_horizontal” 改为 android:gravity=“center_horizontal” 时,其效果图如下:
在这里插入图片描述
不符合我们预期的效果,没有起到任何作用。
(2)当我们采用水平布局( android:orientation = “horizontal” )时,

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" tools:context=".MainActivity">

    <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:text="Hello Android!"/>

</LinearLayout>

效果图如下:
在这里插入图片描述
符合我们预期的效果,当我们将 android:layout_gravity=“center_vertical” 改为 android:gravity=“center_vertical” 时,其效果图如下:
在这里插入图片描述
不符合我们预期的效果,没有起到任何作用。
故我们在线性布局中使用layout_gravity和gravity应该注意以下几点:

1、gravity在线性布局中不起任何作用,layout_gravity在线性布局中起作用;
2、 当我们使用 android:orientation=“vertical” 时, android:layout_gravity只有水平方向的设置才起作用,
垂直方向的设置不起作用。即:left,right,center_horizontal 是生效的;
3、当 我们使用android:orientation=“horizontal” 时, android:layout_gravity只有垂直方向的设置才起作用,
水平方向的设置不起作用。即:top,bottom,center_vertical 是生效的。

初学Android,自我感觉对Android界面布局属性layout_gravity和gravity认识还不够深,若有错误欢迎赐教。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158761.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • oracle怎样将数据库恢复到某个时间点之前_oracle删除时间段之前的数据

    oracle怎样将数据库恢复到某个时间点之前_oracle删除时间段之前的数据deletefromtablename;insertintotablenameselect*fromtablenameasoftimestampto_timestamp(‘2017-01-0811:00:00′,’yyyy-mm-ddhh24:mi:ss’)注意:1.表结构更改了不可使用此方法恢复数据;2.时间间隔不能太长(几个小时还是没…

    2022年9月23日
    1
  • 大学生英语竞赛常考词汇汇总_全国大学生英语竞赛难吗

    大学生英语竞赛常考词汇汇总_全国大学生英语竞赛难吗abbreviation节略,缩写,缩短abidevi遵守,vt忍受absent不在意的abolishvt废除,取消abstracta理论上的,n抽象accessory同谋a附属的accord调和,符合,协议acknowledgevt承认,告知收到acquaintvt使认识,使了解adherevi黏附,追随,坚持adjoinvt贴近,毗连,靠近adjustablea.可调整的,可校准的administrationn局(或署、处等)

    2022年8月24日
    6
  • html如何设置ie6兼容性视图,IE6浏览器兼容性视图设置在哪里[通俗易懂]

    html如何设置ie6兼容性视图,IE6浏览器兼容性视图设置在哪里[通俗易懂]ie6浏览器算是旧版本了,如果你想要设置兼容性视图,该怎么设置呢?下面由学习啦小编为大家整理了IE6浏览器的兼容性视图设置在哪里的方法,希望对大家有帮助!IE6浏览器兼容性视图设置在哪里IE6兼容性视图设置的方法和步骤如下打开电脑后,在开始菜单中,选种【所有程序】,在程序列表中,会看到InternetExplorer浏览器,显示的WIN7操作系统的操作图,如图点击IE浏览器,打开浏览器后,默认登…

    2022年9月7日
    2
  • 聊一聊二维码扫描登录原理

    聊一聊二维码扫描登录原理

    2022年2月14日
    39
  • 动漫常用网站/APP 彻底帮你解决看动漫的烦恼[通俗易懂]

    动漫常用网站/APP 彻底帮你解决看动漫的烦恼[通俗易懂]本文是众多使用技巧中其中的一篇,全部使用技巧点击链接查看,保证你收获满满我主页中的思维导图中内容大多从我的笔记中整理而来,相应技巧可在笔记中查找原题,有兴趣的可以去我的主页了解更多计算机学科的精品思维导图整理本文可以转载,但请注明来处,觉得整理的不错的小伙伴可以点赞关注支持一下哦!本文提到的所有软件和工具,可关注公众号一起学计算机点击资源获取获得本人最常用的网站就是AGE动漫,这是我用过最好的动漫网站,资源算是最全的吧,并且大多数动漫都提供百度云链接,可下载观看,…

    2022年8月23日
    6
  • mysql innodb的事业隔离级别_sqlserver事务隔离级别

    mysql innodb的事业隔离级别_sqlserver事务隔离级别在Mysql中,事务主要有四种隔离级别,今天我们主要是通过示例来比较下,四种隔离级别实际在应用中,会出现什么样的对应现象。Readuncommitted(未提交读)Readcommitted(已提交读)Repeatableread(可重复读)Serializable(可串行化)在理解四种隔离级别之前,我们需要先了解另外三个名词:脏读不可重复读幻读脏读A事务,会读取到B事务还未提交的数…

    2022年8月31日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号