Android - 确保多个设备上的资产非常清晰

时间:2012-10-03 13:53:44

标签: android

我正在两台设备上测试我的应用程序,目前我正在尝试了解drawables文件夹的工作原理:

  • Galaxy S2
  • Nexus 7

徽标都是从hdpi文件夹中提取的,例如:res/drawable-hdpi,我相信这是因为它们具有以下密度。

  • Galaxy S2 - 219
  • Nexus 7 - 216

与Google的密度范围有关,确实是hdpi

enter image description here

如果您查看我的应用主屏幕徽标的两个屏幕截图:

Galaxy S2

enter image description here

Nexus 7

enter image description here

你可以看到Nexus 7上的徽标有点模糊,如果它来自同一个资源drawables文件夹,我如何为7英寸平板电脑提供不同的资产?我是否需要在某个地方设置某个尺寸的徽标?

我还读到Nexus 7也被归类为tvdpi,但我不确定是否应该为此创建任何文件夹。

2 个答案:

答案 0 :(得分:3)

如果两个设备的密度大致相同,则表示显示徽标的图像窗口小部件的大小取决于屏幕大小,因为徽标的大小在较大的屏幕上较大。这可能是它看起来像素化的原因。所以首先要确保图像没有拉伸。

您可以为各种屏幕尺寸提供替代资源。请参阅http://developer.android.com/guide/topics/resources/providing-resources.html中的“smallestWidth”示例 因此,如果必须这样做,您可以在resources/drawable-sw500dp-hdpi/中添加与徽标图像同名的新图像。我选择500因为800 / 1.5 = 533。

答案 1 :(得分:3)

您应该创建一个drawable-tvdpi文件夹,并将任何未完全重新缩放的图像放入其中。 Android会尝试缩小您的hdpi图像,但这并不总是很好看。我总是在hdpi创建所有图像,然后只为tvdpi重新创建缩放图像。

那就是说,你的形象正在被拉伸。将您的ImageView更改为wrap_content的高度和宽度。

此外......如果您想将资源定位到7英寸平板电脑,下面使用-swXXX说明的abel是处理它的新标准方法。不幸的是,-swXXX在Android中引入3.2 ..意思是#1 7“平板电脑,Kindle Fire不会看到该文件夹​​的内容。目前我仍然依赖-large,但期待-swXXX成为常态。