为了账号安全,请及时绑定邮箱和手机立即绑定

实施 onClick on 子菜单以开始新活动

实施 onClick on 子菜单以开始新活动

MMTTMM 2021-07-23 19:01:29
我正在构建一个在工具栏中有菜单项的应用程序,我为一个菜单创建了子菜单,即其 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;


查看完整回答
反对 回复 2021-07-29
  • 3 回答
  • 0 关注
  • 141 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信