Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/192.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在没有后退按钮的情况下关闭ContextMenu?_Android_Android Activity_Contextmenu_Clicklistener - Fatal编程技术网

Android 如何在没有后退按钮的情况下关闭ContextMenu?

Android 如何在没有后退按钮的情况下关闭ContextMenu?,android,android-activity,contextmenu,clicklistener,Android,Android Activity,Contextmenu,Clicklistener,应用程序打开了一个contextmenu,我想关闭/关闭它而不使用back按钮。是否有可能在某个地方收到点击事件,以便我可以呼叫close closeContextMenu () 或者我可以打电话吗 setCancelOnTouchOutside() 我能在对话中找到这样的地方吗?对我来说,另一种选择是将所有上下文菜单重构为弹出窗口,这也可以做到 setOutsideTouchable() 有人有好的提示/想法吗?发送一个关键事件(返回),您就完成了 myView.getRootView(

应用程序打开了一个contextmenu,我想关闭/关闭它而不使用back按钮。是否有可能在某个地方收到点击事件,以便我可以呼叫close

closeContextMenu ()
或者我可以打电话吗

setCancelOnTouchOutside()
我能在对话中找到这样的地方吗?对我来说,另一种选择是将所有上下文菜单重构为弹出窗口,这也可以做到

setOutsideTouchable()
有人有好的提示/想法吗?

发送一个关键事件(返回),您就完成了

myView.getRootView().dispatchKeyEvent(new KeyEvent (KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_BACK));

听起来像是在描述一种类似于对话框中使用的取消侦听器类型的行为,但为什么不使用“后退”按钮呢?

我可以使用closeContextMenu而不是您的解决方案,但这两种实现的问题是,我没有任何可能触发这些关闭解决方案的事件。我想有一个“clicked outside context menu listener”,我可以把这些代码放在这里。