【发布时间】:2012-05-16 01:13:49
【问题描述】:
我正在尝试实现一个操作栏,其中一个单击按钮会显示一个弹出菜单。 这是菜单。 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 为“@+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();
}
问题是单击该按钮时没有弹出窗口。需要帮助的人。
【问题讨论】:
-
您确定正在调用 showPopup 吗?也许 onClick 没有正确注册?
-
我不确定 onClick 是否正确注册。
-
在 showPopup 方法中设置 log.d 或断点,看看它们是否打印出任何内容/被命中。如果可行,那么您可以专注于 showPopup 中的代码。
标签: android popup android-actionbar