1

我按照这里的指南:http: //developer.appcelerator.com/guides/en/app_structure.html

为 android 使用高密度和中等密度图像。

我的文件结构是:

/Resources
/Resources/android
/Resources/android/images
/Resources/android/images/high/ic_menu_add.png
/Resources/android/images/medium/ic_menu_add.png
/Resources/android/images/default.png
/Resources/user
/Resources/user/super.js
/Resources/app.js

default.png 按预期加载。

我在 super.js 的菜单中添加了 6 个按钮(尝试调试它):

var activity = Ti.Android.currentActivity;
activity.onCreateOptionsMenu = function(e) {
  var menu = e.menu;
  var menuItem1 = menu.add({ title: "1" });
  menuItem1.setIcon("/images/ic_menu_add.png");
  menuItem1.addEventListener("click", function(e) {
  });
  var menuItem2 = menu.add({ title: "2" });
  menuItem2.setIcon("../images/ic_menu_add.png");
  menuItem2.addEventListener("click", function(e) {
  });
  var menuItem3 = menu.add({ title: "3" });
  menuItem3.setIcon("../ic_menu_add.png");
  menuItem3.addEventListener("click", function(e) {
  });
  var menuItem4 = menu.add({ title: "4" });
  menuItem4.setIcon("/images/ic_menu_add.png");
  menuItem4.addEventListener("click", function(e) {
  });
  var menuItem5 = menu.add({ title: "5" });
  menuItem5.setIcon("/ic_menu_add.png");
  menuItem5.addEventListener("click", function(e) {
  });
  var menuItem6 = menu.add({ title: "6" });
  menuItem6.setIcon("ic_menu_add.png");
  menuItem6.addEventListener("click", function(e) {
  });
}

当我按下菜单按钮时:

12-15 14:23:59.091: INFO/TiFileHlpr(537): (main) [4617,7631] /images/ic_menu_add.png not found.
12-15 14:23:59.101: INFO/TiFileHlpr(537): (main) [4,7635] ../images/ic_menu_add.png not found.
12-15 14:23:59.121: INFO/TiFileHlpr(537): (main) [25,7660] ../ic_menu_add.png not found.
12-15 14:23:59.121: INFO/TiFileHlpr(537): (main) [3,7663] /images/ic_menu_add.png not found.
12-15 14:23:59.131: INFO/TiFileHlpr(537): (main) [5,7668] /ic_menu_add.png not found.
12-15 14:23:59.140: INFO/TiFileHlpr(537): (main) [5,7673] ic_menu_add.png not found.

官方指南说只使用 'ic_menu_add.png' 这是案例 6 并且不起作用。

构建目录如下所示:

/build/android/res/drawable-hdpi/ic_menu_add_ad7ef1aa68.png
/build/android/res/drawable-mdpi/ic_menu_add_ad7ef1aa68.png

我的自定义 AndroidManifest.xml 中有这个部分:

<supports-screens 
   android:largeScreens="true"
   android:anyDensity="true"
   android:normalScreens="true"  android:smallScreens="true"/>

任何人都知道让多个密度图像工作的正确方法吗?[我使用的是移动 SDK 1.5.x]

4

1 回答 1

1

这是一个已知且已记录的问题。计划在 1.6 中修复

您可以从他们的错误跟踪系统中查看日志:

记录了中等密度图像错误 - Appcelerator

因此,您不会立即得到缓解,但它即将到来。偶尔会发生这种情况,我目前正在等待 iOS 的 UIscreen,以便我可以支持外部显示器/VGA 加密狗。

于 2010-12-20T05:00:41.757 回答