2

我的应用与 Android 1.6 - Android 4.0.3 兼容。我希望我的可绘制对象从头到尾以系统主题更改的所有相关限定符(x|h/m/ldpi 和 swxxxdp)为目标。

在我的脑海中,1.6 - 2.2 是一个主题,2.3.x 是 1 个主题,3.0x 是另一个主题,现在 4.0x 是另一个主题。

目前,我的 res 文件夹如下所示:

  • 可绘制的
  • 可绘制的 hdpi
  • 可绘制-hdpi-v11
  • 可绘制-hdpi-v9
  • 可绘制的 ldpi-v9
  • 可绘制-mdpi-v11
  • 可绘制-mdpi-v9
  • 可绘制-sw320dp
  • 可绘制-sw600dp
  • 可绘制-sw720dp
  • 可绘制-v11
  • 可绘制的-xlarge

对于每个 Android 版本,我觉得我的 res 文件夹的效率都低于应有的水平。查看 ICS 源资源后,只有几个基本的可绘制文件夹,其他主要是特定于语言的。

我的问题是a)如何组织我的drawables文件夹以正确定位每个主题&b)我现在对文件夹做错了什么?

4

2 回答 2

0

我相信你做得很好。这种千篇一律的设置的问题在于,您在您的 apk 上放置了不必要的可绘制对象,例如,它们只会使用其中的 20%。考虑使用不同的过滤器发布单独的 apk -在这里阅读

于 2012-03-13T01:49:46.610 回答
0

(1) 优化APK大小,尝试创建别名资源。 http://developer.android.com/guide/topics/resources/providing-resources.html#AliasResources

(2) swxxxdp 和 vxx 资源冲突。根据资源文件夹搜索优先级,会在 vxx 之前匹配 swxxxdp 文件夹。由于最小宽度具有更高的优先级比较版本。(版本是最低优先级限定符)阅读最佳匹配以获取一些线索:http: //developer.android.com/guide/topics/resources/providing-resources.html#BestMatch

于 2012-03-13T02:09:25.050 回答