相关疑难解决方法(0)

如何覆盖android webview os 4.1+的默认文本选择?

在发布这个问题之前,我已经搜索了很多,但在这个问题上找不到任何明确的答案.

我必须覆盖android webview的默认文本选择并显示我的自定义文本选择对话框选项.我试过这个示例代码项目.

此示例项目适用于以下设备和模拟器:

  • Acer Iconia a500平板电脑:10英寸:Android OS - 3.0
  • Acer Iconia a500平板电脑:10英寸:Android OS - 3.2
  • 三星Galaxy Tab:10英寸:Android OS - 4.0
  • 三星Galaxy Tab:7英寸:Android OS - 4.0
  • 模拟器:Skin-WVGA800:Android OS - 4.1.2

不适用于以下设备:

  • 三星Galaxy Tab:10英寸:Android OS - 4.1.2
  • 三星Galaxy Tab:7英寸:Android OS - 4.1.2

在Android操作系统版本4.1和4.1+而不是显示我的自定义文本选择选项对话框,它显示Android系统的文本选择的默认操作栏.

我对此进行了大量搜索,很多人建议使用onLongClick()方法接口

我已经在这个论坛上问了一个问题请看这个链接,这个问题的答案我能够克隆onLongClick()事件,但我无法停止默认文本选择操作栏.

对于这种情况,我几乎没有问题.

1.为什么onLongClick()方法停止在android os 4.1+上运行的设备上工作?

2.如果长按webview中的文本,如何停止默认文本选择操作栏?

这是我的自定义webview类.

  package com.epubreader.ebook;
  import org.json.JSONException;
  import org.json.JSONObject;
  import android.app.Activity;
  import android.content.Context;
  import android.graphics.Rect;
  import android.graphics.Region;
  import android.os.Handler;
  import android.os.Message;
  import android.util.AttributeSet;
  import android.util.DisplayMetrics;
  import …
Run Code Online (Sandbox Code Playgroud)

android textselection android-webview

45
推荐指数
2
解决办法
1万
查看次数

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

我想覆盖现有的默认上下文操作栏(CAB)进行文本选择.我的意思是,当我在webview上选择一些文本时,我想用自己的按钮显示我自己的CAB.我尝试使用Android文档实现CAB.OnLongClickListener不捕获Web视图中的文本选择事件.捕获文本选择的事件是什么?是否可以隐藏默认CAB并在文本选择上显示我的CAB?

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;
        }
    });
Run Code Online (Sandbox Code Playgroud)

android android-webview contextual-action-bar

27
推荐指数
1
解决办法
8239
查看次数

如何覆盖android中的Web视图文本选择菜单

基本的android的网络文本选择菜单如下图所示.它有复制,共享,全选,网络搜索等选项.

在此输入图像描述

我想过度使用这个菜单并希望它们作为我自己的菜单列表,如"标记颜色","标记为imp"等.我查看有关堆栈溢出的上下文菜单的大部分问题.大多数问题与上下文菜单有关,但没有按预期给出结果.我想要下面的图像菜单

在此输入图像描述

当我执行选择android监视器显示一些视图创建窗体viewRoot喜欢

D/ViewRootImpl: #1 mView = android.widget.PopupWindow$PopupDecorView{648898f V.E...... ......I. 0,0-0,0}
D/ViewRootImpl: #1 mView = android.widget.PopupWindow$PopupDecorView{a66541c V.E...... ......I. 0,0-0,0}
D/ViewRootImpl: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
D/ViewRootImpl: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
Run Code Online (Sandbox Code Playgroud)

如何实现这样的实现?

我也浏览了https://github.com/naoak/WebViewMarker但没有得到正确的结果.

我做了什么呢?

我扩展了Android的WebView,我想支持最小的SDK 19.当我执行长按时我得到了长按事件,但我无法获得这样的菜单创建api调用.

android webview android-menu

17
推荐指数
2
解决办法
5259
查看次数

Webview文本选择不清除

我已经实现了一个ActionMode.Callback自定义文本选择功能WebView.我遇到的问题是选择和操作模式状态不匹配.

当我长按时,一切都很好.

长按时,选择突出显示与上下文操作栏一起显示.

当我与其中一个按钮或WebView(不包括实际选择)进行交互时,ActionMode应该销毁它,并且选择应该消失.

选择按钮,或触摸选择区域外. CAB应该关闭,选择应该消失.

在Android 4.4,KitKat中,这正是发生的事情.


然而,这不是4.1.1 - 4.3,Jelly Bean中发生的情况.单击其中一个按钮时,不会删除选择.

点击上下文操作栏中的按钮. 点击按钮后,选择仍然存在.

当我在选择之外点击时,恰好相反.删除选择,但上下文操作栏仍保留在屏幕上.

选择开始后点击<code>CustomWebView</code><p></p>

<pre><code>public class CustomWebView extends WebView {

    private ActionMode.Callback mActionModeCallback;

    @Override
    public ActionMode startActionMode(Callback callback) {
        ViewParent parent = getParent();
        if (parent == null) {
            return null;
        }
        mActionModeCallback = new CustomActionModeCallback();
        return parent.startActionModeForChild(this, mActionModeCallback);
    }

    private class CustomActionModeCallback implements ActionMode.Callback {

        // Called when the action mode is created; startActionMode() was called
        @Override
        public boolean onCreateActionMode(ActionMode mode, Menu menu) {
            // …</code></pre><a target=Run Code Online (Sandbox Code Playgroud)

android selection webview contextual-action-bar android-actionmode

8
推荐指数
1
解决办法
2799
查看次数

水平菜单inflater长按web键视图

Hy,我在longClick上的webview选择有问题.我已经有了一个在longClick上启动的自定义菜单的实现.但默认菜单也会启动.我正在尝试自定义默认菜单,但我不知道如何捕获项目上的用户点击.我尝试过以下操作,但菜单正在变为垂直并隐藏选择,因此我无法选择更多单词或更改选择.

  @Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo)
{
    super.onCreateContextMenu(menu, v, menuInfo);


    MenuInflater inflater = getMenuInflater();

    /*
        public void inflate (int menuRes, Menu menu)
            Inflate a menu hierarchy from the specified XML resource. Throws InflateException if there is an error.

        Parameters
            menuRes : Resource ID for an XML layout resource to load (e.g., R.menu.main_activity)
            menu : The Menu to inflate into. The items and submenus will be added to this Menu.

    */
    inflater.inflate(R.menu.menu, menu);
}

@Override
public boolean …
Run Code Online (Sandbox Code Playgroud)

android selection long-click webview

7
推荐指数
1
解决办法
603
查看次数

如何在WebView Android中获取所选文本

我正在开发一个应用程序,我需要获取所选文本.

我有一个自定义上下文操作栏,当用户在webview中选择文本时会显示该操作栏.我想在选择处理程序下单击我的操作栏按钮获得突出显示的文本.

先问过问题, 如何在android webview中获取所选文本.

但没有解决方案.

我正在尝试类似myWebView.getSelection()的东西

android webview

6
推荐指数
1
解决办法
2479
查看次数

如何覆盖webview的文本选择上下文菜单?

我有一个要求,比如当我长按网页视图中的文字时点击长按,我应该设置我的自定义上下文菜单项而不是"选择","全选","网页搜索".

请帮我.

在此输入图像描述

想要覆盖这些默认的"全选","复制","分享","网络搜索".在这个地方想要我的自定义菜单.

android contextmenu webview

6
推荐指数
1
解决办法
4951
查看次数

禁用人行横道(cordova)中的上下文选择菜单

我想禁用本地上下文菜单,当你选择一些文本显示,一个与select all,copy,sharesearch按钮.但是,我不想自己禁用选择.理想情况下,我希望实际扩展菜单,但说实话,我只是禁用它完全没问题.对于文本字段等,它从我发现的文档中往往相对简单,但我无法找到一种方法来使用XWalkView/ CordovaWebView.可能是因为我只是在完全错误的角落里寻找.

java android cordova crosswalk-runtime

5
推荐指数
1
解决办法
1075
查看次数