2017-05-22 10 views
0

メニューのアイテムに画像を追加したいと思います。私はインターネット上で多くのソリューションを見つけましたが、どれもうまくいかないようです。メニューのアイテムに画像を追加したい

public boolean onCreateOptionsMenu(Menu menu) { 
    menu.add(0,0,0,"pic 1"); 
    menu.getItem(0).setIcon(R.mipmap.pic1); 

(何も起こりません)

また、私はこのようにコンテキストアクション・モードを使用してメニューを作成しようとしています:

ActionMode mode = ((AppCompatActivity)v.getContext()).startSupportActionMode(callback); 

> private ActionMode.Callback callback = new ActionMode.Callback() { 
     @Override 
     public boolean onCreateActionMode(ActionMode mode, Menu menu) { 
      getMenuInflater().inflate(R.menu.action_mode_context_menu_layout,menu); 
      return false; 
     } 

     @Override 
     public boolean onPrepareActionMode(ActionMode mode, Menu menu) { 
      return false; 
     } 

     @Override 
     public boolean onActionItemClicked(ActionMode mode, MenuItem item) { 
      switch (item.getItemId()) 
      { 
       case R.id.left: 
        TV2.setText("Selected: Left"); 
        TV2.setGravity(Gravity.LEFT); 
        break; 
       case R.id.right: 
        TV2.setText("Selected: Right"); 
        TV2.setGravity(Gravity.RIGHT); 
        break; 
       case R.id.middle: 
        TV2.setText("Selected: Middle"); 
        TV2.setGravity(Gravity.CENTER); 
        break; 
      } 
      return false; 
     } 

     @Override 
     public void onDestroyActionMode(ActionMode mode) { 

     } 
    }; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_2); 
     TV2 = (TextView)findViewById(R.id.textView2); 
     TV2.setOnLongClickListener(new View.OnLongClickListener() 
     { 
      @Override 
      public boolean onLongClick(View v) { 
       ActionMode mode = ((Activity)v.getContext()).startActionMode(callback); 
       return true; 
      } 
     }); 
} 

私はまた、このように試してみました

いずれの場合も何も起こらない

+0

オーバーフローメニュー項目がアイコンを持っていません。 – CommonsWare

+0

Welp、特にアイコンをメニュー項目に追加するという作業があります。 – AlanKalane

+0

アクションバーやツールバーの「メニューアイテム」が「メニューアイテムオーバーフロー」を意味する場合、サポートする方法はわかりません。このアイコンはマテリアルデザインガイドラインに反するため、Googleの実装では結果としてそれをサポートする。アイコンは、アクションバー/ツールバー自体の実際のツールバースタイルのボタン(例えば、 'showAsAction'が' always'または 'ifRoom'に設定されている)でのみ使用されます。 – CommonsWare

答えて

0

ナビゲーションビューにアイコンを追加したいだけですか?

あなただけのアイコンタグ

<item 
     android:id="@+id/nav_clubs" 
     android:icon="@drawable/ic_menu_clubs" 
     android:title="cool"/> 

を使用し、これとの引き出しにそれを追加することができます。

app:menu="@menu/your_group_of_item" 
+0

アンドロイド:アイコンタグは私には何もしません。また、引き出しやアプリの配置場所については何を意味するのかよくわかりません – AlanKalane

関連する問題