2016-12-20 5 views
-1

Я реализовал всплывающее меню в кнопке onClick, с темой AppCompact я могу получить переполнение меню с пустыми элементами в меню. Пожалуйста, помогите мне в этомПункт всплывающего меню панели действий не отображается

OptionMenuBtn = (ImageButton) v.findViewById(R.id.three_dot); 
     OptionMenuBtn.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated m// openOptionsMenu(); 
       showPopup(v); 


      } 
     }); 


    public void showPopup(View v) { 

     PopupMenu popup = new PopupMenu(MainActivity.this, v); 
     MenuInflater inflater = popup.getMenuInflater(); 
     inflater.inflate(R.menu.action_menu, popup.getMenu()); 
     popup.show(); 
    } 

enter image description here

+0

Вы должны разместить код? – Raghavendra

+0

Поделитесь своим кодом (XML/Java), где вы его создаете, и поделитесь своими файлами стиля и тем, где вы создаете тему. –

ответ

0

это должно быть файл Xml:

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

и код активности на вашем OnClick

PopupMenu popupMenu = new PopupMenu(YourActivity.this, view); 
      popupMenu.setOnMenuItemClickListener(YourActivity.this); 
      popupMenu.inflate(R.menu.menu_import_export); 
      popupMenu.show(); 

и инвентарем:

@Override 
public boolean onMenuItemClick(MenuItem item) { 
    switch (item.getItemId()) { 
     case R.id.menu_edit: 
      //TODO 
      return true; 
     case R.id.menu_block: 
     //TODO 
      return true; 

    } 
    return false; 
}