`

Android中gravity与layout_gravity的区别, Padding 与 margin 区别

阅读更多

原文: http://hi.baidu.com/doyee/blog/item/9d42798bff980718c8fc7a82.html

LinearLayout有两个非常相似的属性:android:gravity与android:layout_gravity。他们的区别在于:android:gravity用于设置View组件的对齐方式,而android:layout_gravity用于设置Container组件的对齐方式。

举个例子,我们可以通过设置android:gravity="center"来让EditText中的文字在EditText组件中居中显示;同时我们设置EditText的android:layout_gravity="right"来让EditText组件在LinearLayout中居中显示。来实践以下:

 

正如我们所看到的,在EditText中,其中的文字已经居中显示了,而EditText组件自己也对齐到了LinearLayout的右侧。

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
    <EditText 
        android:layout_width="wrap_content" 
        android:gravity="center" 
        android:layout_height="wrap_content" 
        android:text="one" 
        android:layout_gravity="right"/> 
</LinearLayout>

这两个属性也可以用于 Framlayout Textview 等等,表示的意思大同小异

 

Padding 与 margin 区别
padding填充的意思,指的是view中的content与view边缘的距离,类似文本中的indent
而margin表示的是view的左边缘与parent view的左边缘的距离
margin一般用来描述控件间位置关系,而padding一般描述控件内容和控件的位置关系。
分享到:
评论

相关推荐

    Android中gravity、layout_gravity、padding、margin的区别小结

    在Android开发中,理解并熟练运用`gravity`、`layout_gravity`、`padding`和`margin`是非常关键的,它们决定了视图(View)在布局(Layout)中的位置和内部元素的间隔。下面将详细阐述这四个概念的区别和用法。 ...

    Android_layout.rar_android_android 布局_layout

    在Android开发中,布局(Layout)是构建用户界面的核心元素,它定义了应用程序屏幕上元素的排列方式和相互关系。Android提供了多种布局管理器,如LinearLayout、RelativeLayout、ConstraintLayout等,每种布局都有其...

    Android 控件说明

    - `android:layout_margin*`:设置该视图与其它视图之间的边距。 例如: ```xml &lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:...

    Android Layout样式布局

    - 用途:与`android:gravity`不同,这个属性用于指定控件在父容器中的对齐方式。 - 示例:`android:layout_gravity="center"` - **android:textSize** - 用途:设置控件中文本的字体大小。 - 示例:`android:...

    Android布局文件的属性值解析

    #### android:padding 和 android:layout_margin - **android:padding** 属性用于设置视图内容与视图边缘之间的间距。 - **android:layout_margin** 属性则用于设置视图与周围视图或容器边缘之间的间距。 例如: ...

    android layout

    - **android:layout_gravity**:指定视图在父容器中的位置。例如: - `"left"`:视图靠左边显示。 - `"right"`:视图靠右边显示。 - `"top"`:视图靠顶部显示。 - `"bottom"`:视图靠底部显示。 - `"center_...

    Android 标签属性大全

    本文档将详细介绍一系列常用的Android控件属性,包括布局间距(`margin`)、填充(`padding`)、对齐方式(如`gravity`、`layout_gravity`等)以及其他一些关键属性如`unselectedAlpha`等。通过这些属性的学习与应用...

    Activity layout布局

    9. `android:layout_margin` - 控件外部的边距,若只指定`android:layout_margin`,则所有边距相同,也可以单独指定如`android:layout_marginLeft`。 10. `android:singleLine` - 若设为“true”,则文本将限制在一...

    android studio 基本控件

    - **android:layout_alignTop**, **android:layout_alignBottom**, **android:layout_alignLeft**, **android:layout_alignRight**, **android:layout_alignBaseline**:使当前 View 与其他 View 对齐。 - **android...

    Android布局属性说明.doc

    LinearLayout中有两个相似但不相同的属性:`android:gravity`和`android:gravity:layout_gravity`。前者影响布局内的所有子组件的对齐,后者影响整个LinearLayout在父布局中的位置。 `padding`和`margin`都是关于...

    android UI界面设计

    - **android:layout_margin**:定义子元素边缘与其父布局边缘的间距。 #### 示例代码解析 下面通过两个示例代码来具体说明线性布局的使用方法: **实现水平布局** ```xml xmlns:android=...

    Android中Button样式新方法

    在Android开发中,创建带有图标的按钮是一种常见的需求,这可以使用户界面更加直观且易于操作。传统的Button组件虽然可以直接设置背景图来实现图标与文字的结合,但有时我们需要更灵活的布局方式。本文将介绍一种...

    TableLayout背景

    - `android:padding` 和 `android:margin`:分别控制行内元素的内边距和外边距,以调整元素间距。 4. **TableLayout与GridLayout的区别**:虽然两者都能实现二维布局,但TableLayout更注重表格形式,适合展示有...

    android界面布局

    - **`android:layout_margin`:** 用于设置视图与父容器或相邻视图之间的间距。 - **`android:layout_gravity`:** 控制视图在其父容器中的位置,可选择水平和垂直方向上的对齐方式。 #### 二、相对布局...

    layout源码

    `android:padding`定义视图内部的空间,而`android:margin`定义视图与其父视图之间的空间。 5. **子视图约束**:每个子视图在LinearLayout中都有自己的布局属性,如`android:layout_width`和`android:layout_height...

    Android Tablayout 自定义Tab布局的使用案例

    android:layout_gravity="center" android:background="@drawable/selector_icon_choose_txt_bg" android:padding="@dimen/commom_margin_4" android:textSize="@dimen/commom_tv_size_12" android:textStyle=...

    Android应用开发-购物信息存储界面开发.pptx

    android:layout_gravity="center_horizontal" android:text="立即支付" android:onClick="onPayButtonClick"/&gt; ``` 在对应的Activity中,需要为`onPayButtonClick`方法编写处理逻辑。 6. 最后,别忘了在...

    android布局属性总结文档

    `android:margin`则是视图与周围元素之间的距离,如`android:layout_marginLeft`设置左边的外边距。 **LayoutParams**:`android:layout_width`和`android:layout_height`定义视图的尺寸,可以是固定值(如dp)或`...

    Android应用开发-用户注册界面开发.pptx

    android:layout_margin="30dp" android:background="@drawable/bg_frame_descend_setting" android:gravity="center_horizontal" android:orientation="vertical" android:padding="15dip" &gt; ``` 这里,`...

Global site tag (gtag.js) - Google Analytics