zoukankan      html  css  js  c++  java
  • Android之layout_gravity与gravity解析

    相信layout_gravity和gravity这两个属性一直困扰着很多人,很多初学者都分不清这两个属性有什么区别,以及怎样区分它们。它们中,有一个表示的是一个控件在父布局中的位置,而另一个表示的是一个控件中的文本或子空间的位置。下面我们来辨析一下这两个属性。

    我们先来看这样一段代码:

     1 <LinearLayout
     2     xmlns:android="http://schemas.android.com/apk/res/android"
     3     android:layout_width="match_parent"
     4     android:layout_height="match_parent">
     5 
     6     <TextView
     7         android:layout_width="200.0dip"
     8         android:layout_height="40.0dip"
     9         android:background="@color/colorAccent"
    10         android:gravity="center"
    11         android:text="Hello World"
    12         android:textColor="@color/black"
    13         android:textSize="20.0sp"/>
    14 
    15 </LinearLayout>
    gravity属性辨析

    运行代码得到的结果如下图所示。从结果图中可以看到,gravity并不能让一个控件在父布局中怎么样,它只能控制这个控件内部的文本或元素

    我们把上面代码中的gravity属性改变为layout_gravity属性:

     1 <LinearLayout
     2     xmlns:android="http://schemas.android.com/apk/res/android"
     3     android:layout_width="match_parent"
     4     android:layout_height="match_parent">
     5 
     6     <TextView
     7         android:layout_width="200.0dip"
     8         android:layout_height="40.0dip"
     9         android:background="@color/colorAccent"
    10         android:layout_gravity="center"
    11         android:text="Hello World"
    12         android:textColor="@color/black"
    13         android:textSize="20.0sp"/>
    14 
    15 </LinearLayout>
    layout_gravity属性辨析

    得到的结果如下图所示。从结果图中我们可以看出,layout_gravity可以控制控件在父布局中的位置,而不能控制控件中的文本或元素的位置

    总结与感悟对于Android布局代码中的所有属性,凡是带有“layout_”标记的属性,都是表示控件在父布局中的情况;而如果不带“layout_”标记,则表示对于其自身或对其子元素的影响。

  • 相关阅读:
    用友软件T3出纳通提示单据锁定
    保存单据时提示“计量单位组不正确”
    cxgrid导出数据的格式设置(转载)
    会话打印机不会自动删除解决方法
    用友U8总账对账不平问题总结
    存货核算期初无法从库存取数
    SQL Server 2000 数据库日志太大!如何管理,清除,变小,压缩它
    Delphi控件cxGrid 如何动态创建列?
    关于Treeview 选中节点高亮有关问题
    U8远程接入客户端重新安装问题
  • 原文地址:https://www.cnblogs.com/blog-wzy/p/5205513.html
Copyright © 2011-2022 走看看