android之多分辨率解决方案

你应当为所有广义像素密度中的每一种都提供已经缩放好的适当的bitmap资源:低low, 中medium, 高high以及特高extra-high像素密度。这将使你的应用在所有分辨率的设备上都获得优良的图形质量和呈现效果。

为了生成这些图片资源,你应当以矢量图的格式来制作原始图片资源,然后根据下面的缩放尺寸生成每一种分辨率的图片:

  • 特高分辨率xhdpi: 2.0

  • 高分辨率hdpi: 1.5

  • 中分辨率mdpi: 1.0 (基准)

  • 低分辨率ldpi: 0.75

这意味着如果你要为特高分辨率设备生成一张200x200的图片,那么你需要为高分辨率设备生成150x150,中分辨率设备生成100x100,低分辨率设备生成75x75的图片。

Supporting Different Screens

Android用两种常规属性来分类设备屏幕:尺寸和像素密度。作为开发者,你应当预料到你的android应用程序将会被安装到不同屏幕尺寸和像素密度的设备上。因此,你的应用应当包含可选的资源来优化应用外观,以便支持上述不同尺寸和像素密度的设备。

  • * 有四种广义的尺寸:small, normal, large, xlarge。

  • * 同样也有四种广义的像素密度:low (ldpi), medium (mdpi), high (hdpi), extra high (xhdpi)。

为了声明用于不同屏幕的不同layouts布局和bitmaps资源,你必须把这些可选的资源文件分别放在不同的目录,这一点类似于你在国际化时不同语言strings的操作。

同时要注意屏幕的方向(landscape or portrait)也被认为是一种屏幕尺寸的变化,所以大多数应用都应该修改layout布局来提高用户在不同屏幕方向上的体验。

来自:http://wiki.eoe.cn/page/Supporting_Different_Screens


48dp 定律 - 48dp Rhythm

总的来说,可触摸控件都是以 48dp 为单位的


注意留白

界面元素之间的留白应当是 8dp。



例如,下面是应用程序中的资源目录列表,这个程序为中等、高及超高密度屏幕提供了不同的为不同屏幕尺寸和位图绘图设计的布局。
res/layout/my_layout.xml             // 标准屏幕尺寸的布局("默认")
res/layout-small/my_layout.xml       // 小屏幕尺寸的布局
res/layout-large/my_layout.xml       // 大屏幕尺寸的布局
res/layout-xlarge/my_layout.xml      //超大屏幕尺寸的布局
res/layout-xlarge-land/my_layout.xml // 横向超大的屏幕布局

res/drawable-mdpi/my_icon.png        // 中等密度的位图
res/drawable-hdpi/my_icon.png        //高密度的位图
res/drawable-xhdpi/my_icon.png       // 超高密度的位图



为了给不同密度创建可替代的位图绘图,应该遵循基于四种广义密度的3:4:6:8的缩放比例。例如,你有一个48x48像素的中等密度屏幕的位图绘图(一个启动图标的尺寸),所有不同的尺寸应该是:

  • 36x36适合于低密度

  • 48x48适合于中等密度

  • 72x72适合于高密度

  • 96x96适合于超高密度

获取更多关于设计图标的信息,请参阅the Icon Design Guidelines,文中包含了各种位图绘图的尺寸信息,如启动图标,菜单图标,状态栏图标,选项卡图标等等。


创建支持多种屏幕尺寸的Android应用

http://wiki.eoe.cn/page/Supporting_Multiple_Screens.html


android开发之史上最全系列之android用户界面之fragment

http://www.eoeandroid.com/forum.php?mod=viewthread&tid=276531


你可能感兴趣的:(android,解决方案,应用程序,normal,medium)