Android中的计量单位

在Android中计量单位主要用处是在 xml 布局文件中或以代码的方式来设置组件尺寸。很多可视化组件会设置自身大小拉伸随着屏幕尺寸变化而变化、以相对距离确定自己在界面中的位置(相对容器或者另外一个组件对象),这时你就需要知道如何使用这些计量单位进行设置了。Android中比较常用的计量单位是px、sp、dp这三种,下面我们就来看下这三种计量单位的区别。
1、 PX是Pixel的缩写,也就是我们常说像素。它是指基本原色素及其灰度的基本编码。在Android中如果我们设置每一个控件的长度为80px,那么无论这个控件时在什么分辨率的设备中显示它的长度均为80px。所以我们一般叫PX为绝对像素或者物理像素。

2、DP我们一般叫她为设备独立像素,用它来作为计量单位的好处是:在不同的android物理设备上,每英寸的像素点数量是不同的,如果你采用绝对像素去设置组件对象的位置和大小,当在小屏幕设备中比较合理的控件大小,放置在大屏幕的设备中就会显得比较小了。如果使用dp为单位,应用程序框架就会自动为不同的设备补偿大小和密度。使设置控制的位置或大小根据设备的不同而发生相应的变化。即会随着屏幕大小自动进行缩放。下面我们通过一个示例来说明一下DP功能:

DP在布局文件中设置大小和尺寸,大小和尺寸可以在布局文件中进行硬编码。以下为一个TextView控件的代码

<TextView
 android:layout_width=“wrap_content”
 android:layout_height=“wrap_content”
<!--设置组件距离容器顶部距离-->
 android:layout_marginTop=“100dp” 
<!--设置组件距离容器左侧距离-->
 android:layout_marginLeft=“100dp”
 android:text="Hello World!" />

上面这个TextView组件,如果运行在160dpi的屏幕上,那么该组件位置距离屏幕左侧和顶部恰好是100px,如果运行在320dpi的屏幕上,该组件距离屏幕顶部、左侧200px。
3、SP是Scale-independent Pixel的缩写,我们一般叫做抽象像素。sp和dp很类似也有缩放功能,只不过是用于字体显示。他们的区别是Android系统允许用户自定义文字尺寸大小(小、正常、大、超大等等),当文字尺寸是“正常”时1sp=1dp=0.00625英寸,而当文字尺寸是“大”或“超大”时,1sp>1dp=0.00625英寸。类似我们在windows里调整字体尺寸以后的效果——窗口大小不变,只有文字大小改变。

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textSize="24sp"
    android:text="Hello World!" />

以上为一个TextView控件的代码,其中textSize属性是设置textView控件显示文字大小的。在设置文字显示时我们一般推荐一sp作为计量单位。
以上内容就是我们在Android中常用的计量单位的作用和区别了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值