我正在处理将在多个设备上运行的应用程序。我有三个设备用于测试。
HTC Desire S - 480 x 800像素,3.7英寸(~252 ppi像素密度)
三星P6200 Galaxy Tab 7.0 Plus - 600 x 1024像素,7.0英寸 (~170 ppi像素密度)
三星Galaxy Tab 2 10.1 P5100 - 800 x 1280像素,10.1英寸 (~149 ppi像素密度)
根据我的理解,如果我正确地开发了我的三个以上的应用程序,大多数其他设备将被处理。可能是?
我的问题是我应该从哪里开始设计我的图像?由于这两款平板电脑的密度均为mdpi
但屏幕尺寸不同,我为TAB2设计了图像并将图像放在drawable-mdpi
目录中,这些图像在TAB2上完美展示,但在TAB7上,事情搞得一团糟,图像彼此重叠。
因此,平板电脑都是mdpi
和mdpi
,图片应放在drawable-mdpi
中,但我应该为哪种平板电脑设计图片?
答案 0 :(得分:3)
应用程序UI通常没有完全位图。你有一些像固定大小的图标元素,但从另一方面你的按钮应该没有问题。因此,假设您想要定位所有设备,您应该按照最小支持的屏幕(在这种情况下600 x 1024像素是您的最大值)的方式设计您的UI - 这意味着如果您预览了屏幕上的所有UI元素都完全适合屏幕。在更高的屏幕上,UI必须缩放,但这通常不需要任何特殊的方法(例如,除非您处理位图游戏),因为列表,按钮,布局等元素将自动伸展。如果您的设计假定所述可伸缩元素中包含任何位图,请使用9-patch PNG文件使其正确缩放。
有关该主题的更多信息,请阅读“Supporting Multiple Screens”。
答案 1 :(得分:1)
我建议你设计xhdpi,你可以继续调整以降低dpis。
考虑到dpi与屏幕尺寸无关,另一方面,大屏幕平板电脑的dpi低于大多数“现代”手机。
制作目标屏幕尺寸的布局,即10英寸和7英寸平板电脑,系统将为您的设备dpis获取最佳位图(或重新缩放最近的一个!)。
使用最新的(测试版)Android SDK和Eclipse插件,您可以更好地查看不同设备屏幕:dpi +像素分辨率+屏幕尺寸。现在,它们可以显示,例如
7" WSXVG (Tablet) (1024x600: mdpi)
布局编辑器中的。