Всплывающее меню при нажатии кнопки в панели действий

Я пытаюсь реализовать панель действий, в которой одна из кнопок при нажатии показывает всплывающее окно меню. Вот меню. XML (элементы меню в панели действий)

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

<item
    android:id="@+id/search"
    android:icon="@drawable/ic_action_search"
    android:orderInCategory="0"
    android:showAsAction="always"
    android:title="@string/menu_search"/>
<item
    android:id="@+id/refresh"
    android:icon="@drawable/ic_action_refresh"
    android:orderInCategory="1"
    android:showAsAction="always"
    android:title="@string/menu_refresh"/>


 <Item
    android:id="@+id/popup"
    android:icon="@drawable/ic_action_search"
    android:onClick="showPopup"
    android:orderInCategory="1"
    android:showAsAction="always"
    android:title="@string/menu_search" />

Я хочу показывать всплывающее меню при щелчке элемента с идентификатором "@+id/popup".

вот XML всплывающего меню

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

<item
    android:id="@+id/item1"
    android:icon="@drawable/ic_action_search"
    android:orderInCategory="0"
    android:showAsAction="always"
    android:title="@string/menu_search"/>
<item
    android:id="@+id/item2"
    android:icon="@drawable/ic_action_search"
    android:orderInCategory="1"
    android:showAsAction="always"
    android:title="@string/menu_search"/>

вот метод onClick для кнопки

public void showPopup(View v) {
    PopupMenu popup = new PopupMenu(this, v);
    MenuInflater inflater = popup.getMenuInflater();
    inflater.inflate(R.menu.overflow, popup.getMenu());
    popup.show();
}

И проблема в том, что всплывающее окно не появляется при нажатии этой кнопки. Нужна помощь, люди.

5
задан darsh 7 May 2012 в 14:20
поделиться