您的位置:首页 > 移动开发 > Android开发

android xml android:gravity 和 android:layout_gravity 区别

2015-07-30 21:42 666 查看

布局UI知识点记录

android:gravity用于指定文字在控件中的对齐方式


android:layout_gravity用于指定控件在布局中的对齐方式

名称不以layout_开头的属性作用于组件,组件生成时,会调用某个方法按照属性及属性值进行自我配置。

名称以layout_开头的属性作用于组件,称这些属性为布局参数,它们会告知父布局如何在内部安排自己的子元素。

一言以蔽之


android:gravity
组件的子组件在组件中的位置


android:layout_gravity
组件自身在父组件中的位置

android:gravity

android:gravity用于指定文字在控件中的对齐方式

[code]<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:layout_width  = "match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textSize="24sp"
        android:padding = "24dp"
        android:text="this is text" />

</LinearLayout>


效果见下图:



不过经过试验,android:gravity=”center”也可以指定控件在LinearLayout中居中,比如:

[code]<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical" >

    <TextView
        android:layout_width  = "match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textSize="24sp"
        android:padding = "24dp"
        android:text="this is text" />

</LinearLayout>


再看效果图:



TextView就居于LinearLayout的正中了。

android:layout_gravity

android:layout_gravity用于指定控件在布局中的对齐方式。注意,当LinearLayout是vertical时,只有水平方向上的对齐才会生效。

[code]<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical" >

    <TextView
        android:layout_width  = "match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textSize="24sp"
        android:padding = "24dp"
        android:text="this is text" />

     <TextView
        android:layout_width  = "wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textSize="24sp"
        android:padding = "24dp"
        android:layout_gravity="end"
        android:text="another text" />

</LinearLayout>


效果图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: