当前位置: 首页 > 知识库问答 >
问题:

在Android中覆盖文本选择的默认上下文操作栏(在WebView中)

杜联
2023-03-14
childWebView.setOnLongClickListener(new OnLongClickListener() {
        @Override
     // Called when the user long-clicks on someView
        public boolean onLongClick(View view) {
            if (mActionMode != null) {
                return false;
            }

            // Start the CAB using the ActionMode.Callback defined above
            mActionMode = startActionMode(mActionModeCallback);
            view.setSelected(true);
            return true;
        }
    });

共有1个答案

高砚
2023-03-14

我已经解决了这件事。我也面临这个问题,在网上找不到任何解决方案。

因此,如果您设置了一个LongClick侦听器,Webview将完全停止显示所选内容。在深入研究Webview代码之后,我发现它正在调用Webview的方法startRunMode,并传递SelectActionCallbackMode类的一个实例。

我简单地扩展了Webview类并重写了startRunMode方法,如下所示:

public ActionMode startActionMode(ActionMode.Callback callback) 
{
    actionModeCallback = new CustomizedSelectActionModeCallback();
    return super.startActionMode(actionModeCallback);
}
 类似资料:
  • 宏碁Iconia a500平板电脑:10英寸:Android OS-3.0 宏碁Iconia a500平板电脑:10英寸:Android OS-3.2 三星Galaxy标签:10英寸:Android OS-4.0 三星Galaxy标签:7英寸:Android OS-4.0 模拟器:Skin-WVGA800:Android OS-4.1.2 不在以下设备上工作: 三星Galaxy标签:10英寸:An

  • 如何覆盖,但同时保持Android提供的文本选择? 如果这是不可能的,我是否可以在其他地方调用,这样文本将被正常选择,但我的自定义菜单也将出现? 如果这两个选项都不可能...救命啊。

  • 有没有什么方法可以默认自动选择和中的文本,当事件发生时?

  • 基本的Android网页文本选择菜单如下图所示。它有复制、共享、全选、网络搜索等选项。 我想越过这个菜单,并希望他们作为我自己的菜单列表,如“标记颜色”,“标记为imp”等。我查看了关于堆栈溢出的上下文菜单的大部分可用问题。大多数问题与上下文菜单有关,但没有给出预期的结果。我想要像下面图像一样的菜单 当我执行选择时,android monitor会显示一些视图创建表单viewRoot 我扩展了an

  • 问题内容: 让我们来看看, 我知道如何更改ListView的样式(选择项目时为橙色): android:listSelector =“ @ drawable / xxx”和带有位图或@color的可绘制对象 关键是,为了具有一致的设计,我必须对上下文菜单执行相同的操作,但是我看不到在哪里进行更改。没有listSelector,没有任何更改。 问题答案: 如果通过上下文菜单表示长按菜单,那么我已使用

  • 问题内容: 我已经能够覆盖所有名称以“ android:”为前缀的主题,但是Android themes.xml还定义了似乎无法被覆盖的属性。例如: colorTheground是在Theme.Light xml中定义的,但是在此处添加它可以使我 错误。如何为整个应用程序覆盖该样式? 问题答案: 您可以用修改属性(如)的方式覆盖标准属性,只是不要忘记添加如下前缀: