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 に答える