gravity与Layout_gravity的区别

区别


gravity 这个英文单词是重心的意思,在这里就表示停靠位置的意思。
layout_gravity 是LinearLayout 子元素的特有属性。

对于layout_gravity, 该属性用于设置控件相对于容器的对齐方式,可选项有:top、bottom、left、right、center_vertical、fill_vertical 、 center、fill等等。这些可选项中不是适用于每一种布局。在垂直线性布局中,android:gravity为bottom不起作用;而水平线性布局中,android:gravity为right不起作用。
android:layout_gravity 只在 LinearLayout 和 FrameLayout 中有效


  android:gravity 是设置该view里面的内容相对于该view的位置

演示效果一 、在layout_gravity在RelativeLayout中不起作用 ( android:layout_gravity 只在 LinearLayout 和 FrameLayout 中有效
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">


    <ImageView
        android:id="@+id/iv_pic1"
        android:layout_width="120dp"
        android:layout_height="120dp"
        android:layout_gravity="center"
        android:src="@mipmap/p1"

        />


</RelativeLayout



演示效果二 
在线性布局中,垂直方向 layout_gravity=center 在垂直方向显示不出效果
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">


    <ImageView
        android:id="@+id/iv_pic1"
        android:layout_width="120dp"
        android:layout_height="120dp"
        android:layout_gravity="center"
        android:src="@mipmap/p1"

        />
</LinearLayout>






演示效果三 

在线性不居中的水平方向,layout_gravity=center在水平方向显示不出效果

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">


    <ImageView
        android:id="@+id/iv_pic1"
        android:layout_width="120dp"
        android:layout_height="120dp"
        android:layout_gravity="center"
        android:src="@mipmap/p1"

        />
</LinearLayout>


演示效果四


对于gravity = center,在上面的几个布局中不管是父布局线性布局变为水平布局还是改变orientation方向,不会影响到

android:gravity="center"所起到的作用


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值