19

オプションメニューでアイコンを表示する方法.次のコードを試しましたが、オプションメニューに画像アイコンがありません.アプリの開発にAndroidバージョン4.0を使用しています.

Java コード:

 public boolean onCreateOptionsMenu(Menu menu) {
            super.onCreateOptionsMenu(menu);
             menu.add("Add Contacts").setIcon(
                    R.drawable.ic_launcher);

            return true;
        }

以下は私のアプリのスクリーンショットです

ここに画像の説明を入力

「連絡先の追加」アイテムの上部に画像を表示する必要があります。

4

9 に答える 9

4

私は2行でコードを試してみましたが、うまくいきます:

public boolean onCreateOptionsMenu(Menu menu) {
        super.onCreateOptionsMenu(menu);
        menu.add("Add Contacts");
        menu.getItem(0).setIcon(R.drawable.ic_launcher);
        return true;
}
于 2014-01-27T17:57:50.843 に答える
3

次のようなカスタムメニューを作成できます。

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/add_contacts"
          android:icon="@drawable/ic_launcher"
          android:title="@string/add_contacts"
         />
</menu>

そしてそれを膨らませる

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.my_menu, menu);
    return true;
}

詳細はこちら: http ://developer.android.com/guide/topics/ui/menus.html#options-menu

于 2013-02-21T06:04:53.937 に答える
3

これをxmlファイルに直接設定できます。

  <item android:id="@+id/add_contacts"
  android:icon="@android:drawable/plus_icon"
  android:title="Add Contacts"/>
于 2013-02-21T06:07:12.040 に答える
2

このリンクをたどってみることができます。

これをチェックして、うまくいったかどうか教えてください。

または、このようなことを行うこともできます。
menu.xml を作成する

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
      <item android:id="@+id/next"
              android:icon="@drawable/ic_next"
              android:title="@string/next" />
      <item android:id="@+id/previous"
            android:icon="@drawable/ic_previous"
            android:title="@string/previous" />
      <item android:id="@+id/list"
            android:icon="@drawable/ic_list"
            android:title="@string/list" /> 
</menu>

これで、メニューにアイコンを設定できるようになります

CreateOptionMenu に追加

public boolean onCreateOptionsMenu(Menu menu) {
      MenuInflater inflater = getMenuInflater();
      inflater.inflate(R.menu.menu, menu);
      return true;
    }

そして、そのメニューにアクセスします。

public boolean onOptionsItemSelected(MenuItem item) {
      switch (item.getItemId()) {
      case R.id.next:
            Toast.makeText(this, "You have chosen the " + getResources().getString(R.string.next) + " menu option",
                        Toast.LENGTH_SHORT).show();
            return true;
      …
      default:
            return super.onOptionsItemSelected(item);
      }
   }
于 2013-02-21T06:21:21.137 に答える
1

マニフェストファイルで次の属性を使用すると、アイコンが表示されます....

<activity android:name=".ui.CategoryActivity"
        android:label="@string/app_name"
        **android:theme="@android:style/Theme.NoTitleBar"**></activity>

それは私にとってはうまくいきます... :)自分の努力のために+1...

**必ず入力してください。

于 2013-03-08T06:59:23.007 に答える
-1

問題は Androidmanifest.xml です。削除する android:theme="@style/AppTheme"と、問題なく動作します

于 2013-12-13T19:27:44.040 に答える