我正在构建一个在工具栏中有菜单项的应用程序,我为一个菜单创建了子菜单,即其 ID 为“云”。当单击将打开不同的活动时,我想在每个子菜单上实现 onclick。这是 menu.xml 文件<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/action_refresh" app:showAsAction="ifRoom" android:title="Refresh" android:icon="@drawable/ic_loop_black_24dp"></item> <item android:id="@+id/notes" app:showAsAction="ifRoom" android:title="Refresh" android:icon="@drawable/ic_event_note_black_24dp"></item> <item android:id="@+id/cloud" app:showAsAction="ifRoom" android:title="Refresh" android:icon="@drawable/ic_cloud_upload_blackt_24dp"> <menu> <group android:checkableBehavior="single"> <item android:id="@+id/imageee" android:title="Image Upload" android:orderInCategory="100" app:showAsAction="ifRoom" /> <item android:id="@+id/pdfff" android:title="Pdf Upload" android:orderInCategory="100" app:showAsAction="never"/> </group> </menu> </item></menu>
3 回答
泛舟湖上清波郎朗
TA贡献1818条经验 获得超3个赞
我认为你不想拥有
android:checkableBehavior="single"
在您的子菜单上设置。此行为仅在您只想捕获菜单项中的选项(或多个选项)时有用,但如果您真的想在用户选择子菜单项时做出反应(即:做某事),则没有用。
根据您的问题,听起来您想Activity在用户选择这些子菜单项之一时启动另一个。为此,只需将这些菜单项添加到以下switch语句中onOptionsItemSelected():
case R.id.imageee:
Intent imageIntent = new Intent(this, Upload.class);
startActivity(imageIntent);
return true;
case R.id.pdfff:
Intent pdfIntent = new Intent(this, Pdf.class);
startActivity(pdfIntent);
return true;
添加回答
举报
0/150
提交
取消