Android视觉规范-间距规范与文字规范单位换算(dip、sp与px)

简介:

http://blog.csdn.net/shimiso/article/details/29826073

 

1、dip与px

Android工程师在写页面时,margin值的单位是dip,而视觉设计师通常情况下是通过px来控制margin值的,不同单位之间的差别是什么呢?看下面的参数。

 

在WVGA(800x480)下dip与px之间的视觉测算结果: 

1dip=2px

9dip=14px

17dip=26px

2dip=3px

10dip=15px

18dip=27px

3dip=5px

11dip=17px

19dip=29px

4dip=6px

12dip=18px

20dip=30px

5dip=8px

13dip=20px

21dip=31px

6dip=9px

14dip=21px

 

7dip=11px

15dip=23px

 

8dip=12px

16dip=24px

 

根据上述数值可以得出一个在WVGA下dip与px的换算公式(2N代表任意偶数,2N-1代表小与偶数1的奇数):

 dip与px之间的换算公式:

a. 2N + 2N/2 = PX

b.(2N-1)+ 2N/2 = PX

注:偶数值dip 的1.5倍等于相对应的px值,偶数值的间距与奇数元素设置居中对齐的时候会有1px的误差,仔细看可能会不是很美观(如下图)。

 

A与B居中对齐时有一个值的差,C与D可以完美居中对齐。

但是这种情况发生的几率还是非常小的,只有在细扣页面的时候常见到,遇到时应急处理一下也可以解决问题,但是如果在一开始设计时就注意了的话,后面细扣也不会出现问题的,也就省去了应急处理的时间,在一定程度上可以提高效率。

 

在HVGA(320x480)下dip与px之间的视觉测算结果:

1dip=1px

9dip=9px

17dip=17px

2dip=2px

10dip=10px

18dip=18px

3dip=3px

11dip=11px

19dip=19px

4dip=4px

12dip=12px

20dip=20px

5dip=5px

13dip=13px

21dip=21px

6dip=6px

14dip=14px

 

7dip=7px

15dip=15px

 

8dip=8px

16dip=16px

 

根据上述参数得出的结果是dip值等于px值。

由上述得出,视觉设计师在WVGA(480x800)模式下设计,建议最佳间距是:12px、18px、24px、30px、36px、42px、48px,由于dip、px值在HVGA\WVGA 对应的都是偶数,各个元素能做到最严格的对齐。

 

二、sp与px

在WVGA(800x480)下sp与px之间的视觉测算结果:

7sp=11px

15sp=23px

23sp=35px

8sp=12px

16sp=24px

24sp=36px

9sp=14px

17sp=26px

25sp=38px

10sp=15px

18sp=27px

26sp=39px

11sp=17px

19sp=29px

27sp=41px

12sp=18px

20sp=30px

28sp=42px

13sp=20px

21sp=31px

29sp=44px

14sp=21px

22sp=33px

30sp=45px

根据上述参数得出的结果:

sp与px之间的换算公式与dip与px的换算公式相同:

a. 2N + 2N/2 = PX

b.(2N-1)+ 2N/2 = PX

在HVGA(320x480)下sp与px之间的换算结果:

7sp=7px

15sp=15px

23sp=23px

8sp=8px

16sp=16px

24sp=24px

9sp=9px

17sp=17px

25sp=25px

10sp=10px

18sp=18px

26sp=26px

11sp=11px

19sp=19px

27sp=27px

12sp=12px

20sp=20px

28sp=28px

13sp=13px

21sp=21px

29sp=29px

14sp=14px

22sp=22px

30sp=30px

根据上述参数得出的结果是sp值等于px值。

由上述得出,视觉设计师在WVGA(480x800)模式下设计,建议常用最佳字号是:18px、24px、30px、36px、42px,在一些需要严格对齐的位置,这几个参数的文字是不会出问题的,当然其他的字号也是可以用的,毕竟应用中不是所有的文字都需要严格的对齐。

 

知识普及:

sp、dip,Android默认单位,可根据不同的屏幕大小自适应,同样的字号,不同的屏幕尺寸下显示的视觉效果大小不同。

Px属于固定像素值,不会主动自适应屏幕大小,不同的屏幕尺寸下显示的视觉效果大小效果相同。




本文转自wanqi博客园博客,原文链接http://www.cnblogs.com/wanqieddy/p/4795695.html,如需转载请自行联系原作者



相关文章
|
编解码 Android开发
Android 常用布局单位区别(dp、sp、px、pt、in、mm)
Android 常用布局单位区别(dp、sp、px、pt、in、mm)
671 0
|
3月前
|
监控 开发工具 Android开发
结合GB/T28181规范探讨Android平台设备接入模块心跳实现
本文介绍了GB28181标准中的状态信息报送机制,即心跳机制,用于监控设备与服务器间的连接状态。根据国标GB/T28181-2016,设备在异常时需立即发送状态信息,在正常状态下则按固定间隔(默认60秒)定期发送。若连续三次(默认值)未收到心跳,则视为离线。文章展示了在Android平台的GB28181设备接入模块(SmartGBD)中,如何调整心跳间隔为20秒及超时次数为3次,并给出了心跳消息的示例和异常处理代码片段。对于希望深入了解或遇到问题的开发者,作者提供了进一步交流的机会。
|
6月前
|
安全 数据处理 Android开发
安卓隐私权政策和Google Play规范更新
【4月更文挑战第14天】谷歌针对安卓平台的隐私权政策和Google Play规范进行重要更新,强化用户隐私保护和安全标准。新政策强调最小化数据收集,要求开发者明确告知用户敏感数据用途,并限制不必要的后台数据处理。Google Play规范更新要求应用详述数据收集方式,增加安全审查机制,确保无恶意代码。开发者面临调整,但有机会提升应用安全标准,赢得用户信任。用户数据安全得到提升,移动生态系统将更健康、可持续。
138 1
|
6月前
|
XML 数据库 数据安全/隐私保护
Android App规范处理中版本设置、发布模式、给数据集SQLite加密的讲解及使用(附源码 超详细必看)
Android App规范处理中版本设置、发布模式、给数据集SQLite加密的讲解及使用(附源码 超详细必看)
76 0
|
网络协议 开发工具 Android开发
​​Android平台GB28181历史视音频文件下载规范探讨及技术实现
​​Android平台GB28181历史视音频文件下载规范探讨及技术实现
176 1
|
开发工具 Android开发 开发者
Android平台GB28181历史视音频文件检索规范探讨及技术实现
Android平台GB28181历史视音频文件检索规范探讨及技术实现
|
开发工具 Android开发 开发者
Android平台GB28181接入端语音广播和语音对讲规范解读和技术实现
我在之前的blog,有提到过Android端GB28181接入端的语音广播和语音对讲,今天主要从GB/T28181-2016官方规范和交互流程,大概介绍下Android平GB28181接入端的语音广播和语音对讲。
237 0
|
数据可视化 Java Android开发
一个便捷操作的Android可视化规范检查
目前工具有九个功能,包含了,注释,类,方法,变量等基本的规范验证,如下图所示,当然也都是一些常见的规范功能检查,后续的话也会进行拓展,虽然此规范是按照我公司的标准去执行的,其实,Android嘛,大差不差,就那些规范,基本百变不离其宗,如果有不是很符合的,大家也可以在源码中进行更正为自己需要的就可以了。
113 0
|
JavaScript 前端开发 Shell
Android打造专有hook第二篇,走进规范第一步
关于Git的Hooks,其实很常见,位置存在于 /.git/hooks 目录下,都是一些 shell 脚本,然后在对应的钩子中执行这些脚本就行了,比如下图中,这是一个还没有配置 Git Hooks 的仓库,默认会有很多.sample结尾的文件,这些都是示例文件,比如我们常见的,commit,push等。
168 0