0

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

  • Galaxy S2
  • 连结 7

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

  • 银河 S2 - 219
  • 连结 7 - 216

这与谷歌的密度范围有关,确实是hdpi

在此处输入图像描述

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

Galaxy S2

在此处输入图像描述

连结 7

在此处输入图像描述

您可以看到 Nexus 7 上的徽标有点模糊,如果 7" 平板电脑来自同一个资源 drawables 文件夹,我该如何为它提供不同的资源?我是否需要在某处的徽标上设置一些大小?

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

4

2 回答 2

3

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

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

于 2012-10-03T14:33:19.530 回答
3

您应该创建一个drawable-tvdpi文件夹并将所有缩放不够干净的图像放入其中。Android 会尝试缩小您的 hdpi 图像,但这并不总是看起来不错。我总是在 hdpi 创建所有图像,然后只为 tvdpi 重新创建缩放不佳的图像。

也就是说,您的图像正在被拉伸。ImageView将您的高度和宽度更改为wrap_content.

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

于 2012-10-03T14:45:47.407 回答