android - 如何在 Android API 11 平板电脑及更多设备上获取应用程序的 hdpi 图标(在 Java 代码中)?

标签 android icons android-3.0-honeycomb launcher homescreen

我在摩托罗拉 xoom 上注意到,启动器上的应用程序图标大小为 72 像素 x 72 像素。这通常是包中 drawable-hdpi/中定义的图标的大小。

在我的应用程序中,我想在 72x72px 大小上显示一些已安装应用程序的图标。我目前通过 PackageManager 获取已安装应用程序的图标,但它返回了较小尺寸 (46px) 的位图,这对应于每个包的 drawable-mdpi/中定义的资源。这对我来说是 Not Acceptable ,因为我想以更大的格式显示这些图标。

显然,摩托罗拉 xoom 的 10"屏幕是 160dpi,因此是 mdpi 和 xlarge(参见 http://developer.android.com/guide/practices/screens_support.html#range)。 这将解释 PackageManager 返回 mdpi 资源而不是 hdpi 资源的行为。

我怎样才能获得最小尺寸为 72x72px 的已安装应用程序的图标?有谁知道它是如何在 Android Honeycomb 上的 Launcher 应用程序中完成的?

谢谢, 洛朗

最佳答案

您可以在 res 文件夹中创建特殊的子文件夹,并将其命名为 drawable-large-v11drawable-large-v11 或其他适合的名称你的申请。

然后将大图标复制到该子文件夹,但文件名必须与不同 dpi 的其他文件夹中的文件名相同。我在我的应用程序中使用了这种方法并且效果很好。

关于android - 如何在 Android API 11 平板电脑及更多设备上获取应用程序的 hdpi 图标(在 Java 代码中)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6755166/

相关文章:

android - 仅为特定市场启用功能

android - 编译签名的APK并直接从IDE安装?

objective-c - 获取 cocoa 中特殊路径的图标

android - 在 Android 3.0+ 中使用 android.app.Fragment 和 ViewPager

android - 无法在 HoneyComb 3.2 上安装应用程序 - 它给出 INSTALL_PARSE_FAILED_NOT_APK 错误

java - androidcameraX API亮度问题

javascript - 停止在后面的 div 中滚动

c++ - 如何使用像素缓冲区加载 Windows 图标?

java - 如何双击图标执行JAVA程序?

android - TrueType 无法在 Android 蜂窝中加载