`
zsg88
  • 浏览: 25420 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Android 的Margin和Padding属性

 
阅读更多

Android的Margin和Padding跟Html的是一样的。如下图所示:黄色部分为Padding,灰色部分为Margin。

image

通俗的理解 Padding 为内边框,Margin 为外边框

对应的属性为

android:layout_marginBottom="25dip"
android:layout_marginLeft="10dip"
android:layout_marginTop="10dip"
android:layout_marginRight="10dip"
android:paddingLeft="1dip"
android:paddingTop="1dip"
android:paddingRight="1dip"
android:paddingBottom="1dip"

如果左右上下都是相同的设置则可以直接设置

android:layout_margin="10dip"
android:padding="5dip"

 

Android支持的长度单位。

  • px(像素):屏幕上的点。
    pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多。
  • in(英寸):长度单位。
  • mm(毫米):长度单位。
  • pt(磅):1/72英寸。
    point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用;
  • dp(与密度无关的像素):一种基于屏幕密度的抽象单位。在每英寸160点的显示器上,1dp = 1px。
  • dip:与dp相同,多用于android/ophone示例中。
    device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。
  • sp(与刻度无关的像素):与dp类似,但是可以根据用户的字体大小首选项进行缩放。
    scaled pixels(放大像素). 主要用于字体显示best for textsize。

为了使用户界面能够在现在和将来的显示器类型上正常显示,建议大家始终使用sp作为文字大小的单位,Android默认的字号也是用的sp。

将dip作为其他元素的单位,比如长度、高度。当然,也可以考虑使用矢量图形,而不是用位图。

 

dp是与密度无关,sp除了与密度无关外,还与scale无关。

如果屏幕密度为160,这时dp和sp和px是一样的。1dp=1sp=1px,但如果使用px作单位,如果屏幕大小不变(假设还是3.2寸),而屏幕密度变成了320。

那么原来TextView的宽度设成160px,在密度为320的3.2寸屏幕里看要比在密度为160的3.2寸屏幕上看短了一半。

但如果设置成160dp或160sp的话。系统会自动将width属性值设置成320px的。

也就是160 * 320 / 160。其中320 / 160可称为密度比例因子。也就是说,如果使用dp和sp,系统会根据屏幕密度的变化自动进行转换.

分享到:
评论

相关推荐

    android_中_padding与margin

    ### Android中的Padding与Margin详解 在Android开发过程中,布局设计是一项非常重要的工作。合理的布局能够提升应用的用户体验,而`padding`与`margin`作为控制视图间距的关键属性,在实现美观且符合逻辑的设计中...

    Android布局文件的属性值解析

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

    android排版布局属性

    - **android:padding**:设置控件内部四周边缘的填充距离。 - **android:paddingLeft**、**android:paddingTop**、**android:paddingRight**、**android:paddingBottom**:分别设置控件内部左边、上边、右边、下边的...

    android布局属性总结文档

    **Padding**和**Margin**:`android:padding`是视图内部的空间,`android:paddingLeft`、`android:paddingTop`等分别设置各边的内边距。`android:margin`则是视图与周围元素之间的距离,如`android:layout_...

    android Ui 属性

    4. `android:padding` 和 `android:margin`:分别用于设置控件内部的边距和外部的间距,可以单独设置上下左右四个方向的值。 二、控件属性 1. `android:text`:设置TextView的文本内容。 2. `android:src`:为...

    Android_布局属性大.zip

    `android:layout_margin`属性用于设置组件与周围其他组件或边缘的距离,有top、bottom、left和right四个方向的值。`android:padding`则是内部间距,影响组件内内容与边框的距离。 ConstraintLayout是现代Android...

    Android 标签属性大全

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

    android 属性汇总.rar

    - `android:layout_margin` 和 `android:padding`:设置元素边缘和内部边距,同样支持"match_parent"、"wrap_content"和具体像素值。 - `android:orientation`:在LinearLayout中用于定义布局的方向,可选...

    Android布局属性说明.doc

    `padding`和`margin`都是关于边距的属性。`padding`是元素内容与其边框之间的距离,而`margin`则是元素边框与周围元素或父布局边缘的距离。 `android:orientation`属性用于设置LinearLayout的方向,`vertical`表示...

    android布局属性大全

    - `android:layout_margin`和`android:padding`:外边距和内边距分别控制视图与其他元素的距离和内部内容与边框的距离,同样支持像素值和百分比形式。 - `android:background`:设置视图的背景,可以是颜色、渐变、...

    Marging Border Background Padding Context理解

    元素的背景包括颜色、图像和重复方式等属性。可以设置背景色,如`background-color: blue;`,或者设置背景图片,如`background-image: url('image.jpg');`,并可以设定图片是否平铺、定位等。 4. **Padding(内...

    Android-XML一般属性.docx编程资料

    ### Android XML 一般属性概述 #### 一、Android系统中的常用权限 在Android开发中,应用程序需要声明并请求一些特定的权限才能访问某些系统...掌握这些属性和方法有助于开发者更加高效地开发出高质量的应用程序。

    Android_布局属性大(1).zip

    5. `android:layout_margin*` 和 `android:padding*`:margin设置了视图与周围元素的距离,而padding则是视图内部内容与边界的距离。两者都有"top"、"bottom"、"left"、"right"四个方向的属性。 6. `android:layout...

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

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

    Android高薪之路:Android程序员面试宝典 李宁

    2 3 2 android:padding属性和android:layout margin属性 2 3 3 android:layout gravity属性和android:gravity属性 2 4 高级布局技术 第3章 组件 3 1 组件的属性 3 2 文本组件 3 3 按钮组件 3 4 图像组件 3 5 进度...

    Android_layout.rar_android_android 布局_layout

    8. **ViewGroup Margin 和 Padding**:所有布局都继承自ViewGroup,因此都支持`android:margin`和`android:padding`属性。`margin`控制视图与其相邻元素的距离,`padding`则是视图内部的边距。 9. **Intrinsic尺寸*...

    android布局属性详

    1. **`android:layout_margin*`** - **作用**:定义视图与其周围视图之间的间距。 - **示例**:`android:layout_marginBottom="20dp"`表示底部外边距为20dp。 #### 图片缩放类型 1. **`android:scaleType`** - ...

    Android TextView实现垂直滚动效果的方法

    android:padding="10dp" android:scrollbarFadeDuration="2000" /> ``` 在这个例子中,`android:maxLines="8"`属性限制了TextView最多显示8行文本,超出部分会通过滚动条进行查看。 需要注意的是,尽管设置了...

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

    在 Tablayout 中,我们可以使用 `app:tabPaddingStart` 和 `app:tabPaddingEnd` 属性来设置 Tab 的左边和右边 padding。这两个属性可以帮助我们调整 Tab 的 padding,从而实现更好的用户体验。 四、设置 Tab 的滚动...

Global site tag (gtag.js) - Google Analytics