android TV 屏幕适配 1 基本概念

1、dpi ,dip(dp), density

几个比较难描述的概念,摘这个blog的:

http://www.cnblogs.com/wader2011/archive/2011/11/29/2267490.html

1 、物理单位像素 pixel

2 、density: 屏幕密度  指每平方英寸中的像素数。

Density=Resolution/Screen size

在DisplayMetrics类中属性density的值为dpi/160(可用于px与dip的互相转换)

3、dpi: (dots per inch 像素密度)

每英寸中的像素数。如160dpi指手机水平或垂直方向上每英寸距离有160个像素点。假定设备分辨率为320*240,屏幕长2英寸宽1.5英寸,  dpi=320/2=240/1.5=160

简单的估算可以用ppi 也就是买手机时经常会标的参数:

=屏幕对角线的像素长度/屏幕对角线的尺寸

4、dip = dp: (Device-independent pixel,设备独立像素)

dip值 =设备密度/160* pixel值

dip值 =density* pixel值


android TV 屏幕适配 1 基本概念_第1张图片


2、常见设备对应值

理想设备

- xxhdpi -> dpi=480 ->density=3

- xhdpi -> dpi=320 -> density=2

- hdpi -> dpi=240 -> density=1.5

- mdpi -> dpi=160 -> density=1

其中:

手机设备 720p 对应 xhdpi

手机设备 1080p 对应 xxhdpi

tv 设备 720p 对应 mdpi

tv 设备 1080p 对应 hdpi

3、标注与切图 设计图对取图的影响

ui 图的标注,切图和 设计图的分辨率有关系。

比如针对Android开发的ui图给图也是跟着主流设备走,一个发展的过程:

480*800 -> 720*1280 -> 1080*1920 -> (以后2k屏幕)

手机(480*800 hdpi = 1.5) ->(720*1280 xhdpi = 2) -> (1080*1920 xxhdpi = 3)

tv (720*1280 mdpi = 1) -> (1080*1920 hdpi = 1.5)

3.1、距离的标注

例如:比如对字体的标注,一个控件和另一个控件之间的距离标注。

设计图1080*1920 上的一个距离是 100.0px 对应

在1080*1920 -xhdpi(tv dpi=1.5) 的设备上对应的就是 100.0 / 1.5 dp

在720*1280 - mdpi (tv dpi=1.0 )的设备上对应的就是 100*(720/1080)/1 = 100/1.5dp

3.2、图片切图

切图的计算方式和距离的标注的计算方式不同

3.2.1设计图 = 1080 * 1920 icon = 232*232

手机尺寸

xxhdpi:xhdpi:hdpi:mdpi = 6:4:3:2 其中设计图与xxhpi的图标大小一致

xxhpi 232*232

xhdpi 155*155

hdpi 116*116

mdpi 77*77

tv尺寸

hdpi:mdpi = 1.5 :1

hdpi 232 x 232

mdpi 155 x 155

3.2.2设计图 = 720 * 1080 icon = 232*232

xxhdpi:xhdpi:hdpi:mdpi = 6:4:3:2 其中设计图与xhpi的图标大小一致

xxhdpi 348x348

xhpi 232x232

hdpi 174x174

mdpi 116x116

tv尺寸

hdpi:mdpi = 1.5:1

hdpi 348x348

mdpi 232x232

mdpi


hdpi
xhdpi

你可能感兴趣的:(android TV 屏幕适配 1 基本概念)