Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.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
如何在Chromebook上的Android应用程序的WebView中显示右键单击上下文菜单_Android_Android Webview_Chromebook - Fatal编程技术网

如何在Chromebook上的Android应用程序的WebView中显示右键单击上下文菜单

如何在Chromebook上的Android应用程序的WebView中显示右键单击上下文菜单,android,android-webview,chromebook,Android,Android Webview,Chromebook,我正在开发一款Android应用程序,它有一个WebView,可以显示各种内容。当我用手指长时间点击(长时间触摸)一些文本时,会弹出一个标准(水平)Android上下文菜单。但是,当我在同一个WebView中用鼠标或触摸板右键单击时,不会显示上下文菜单,而且不管是否选择了某些文本 我尝试了很多解决方案,甚至在右键单击时也不会调用回调(如图所示)(但是调用了通用的运动事件回调),因此在WebView中似乎根本不支持它 最后,我似乎不得不创建自己的上下文菜单。我只是想知道是否有任何标准的一个,只是必

我正在开发一款Android应用程序,它有一个
WebView
,可以显示各种内容。当我用手指长时间点击(长时间触摸)一些文本时,会弹出一个标准(水平)Android上下文菜单。但是,当我在同一个
WebView
中用鼠标或触摸板右键单击时,不会显示上下文菜单,而且不管是否选择了某些文本

我尝试了很多解决方案,甚至在右键单击时也不会调用回调(如图所示)(但是调用了通用的运动事件回调),因此在WebView中似乎根本不支持它

最后,我似乎不得不创建自己的上下文菜单。我只是想知道是否有任何标准的一个,只是必须以某种方式启用

我想要的是类似于垂直的
EditText
right-click上下文菜单的东西,但我在右键单击时无法显示这两个菜单中的任何一个。同时显示水平和垂直菜单


我正在HP Chromebook x360 11 G1 EE上测试,如果这有什么不同。

您可以
覆盖
Web视图中的
onTouchEvent(MotionEvent事件)
,并检测
事件。getButtonState()
以查看单击了哪个按钮

    switch (event.getButtonState()) {
        case MotionEvent.BUTTON_PRIMARY:
            onMouseClickListener.onLeftClick();
            break;

        case MotionEvent.BUTTON_SECONDARY:
            onMouseClickListener.onRightClick();
            break;
    }
请注意,
onMouseClickListener
是此事件的自定义侦听器