【问题标题】:Highlight Text feature like google play book突出显示文本功能,如 google play book
【发布时间】:2013-05-19 21:04:00
【问题描述】:

我希望我的 android 应用程序在 WebView 中突出显示文本。类似于 Google play book 中的功能。有谁知道如何实现这一目标?

我使用的是WebView,因为我的内容是 html 格式。

基本上讲这个效果:

【问题讨论】:

  • 呀。我在谈论这个..所以你的帮助
  • 您希望在选择时或何时突出显示文本?
  • 选择时。我现在使用网络视图,因为我的内容是 html 形式。但不能在网络视图上实现这一点。任何其他选项
  • @SuhailMehta:你有没有找到任何可行的方法?我正在寻找在我的 Textview 或 Webview 中提供的类似功能,这些功能将显示 HTML。

标签: android select text webview


【解决方案1】:

您看到的蓝色选择是选择文本时标准 android 环境的一部分。所以这应该可以在您的标准 webview 上运行,而不需要任何自定义代码。 => 我不再相信这是真的。好像不是。

然而,绿色(黄色、橙色、红色……)选择是自定义的。

您可以从选择事件中读出所选文本,并使用该信息更新 html 内容,将文本包装在具有背景颜色集的 span 中。

另一种方法是使用 javascript 并在您的 web 视图中启用 javascript。但是不确定如何完成。

检查该方法的一些来源是https://github.com/btate/BTAndroidWebViewSelectionAndroid: How to select text from WebView, and highlight it onclick

从 WebView 详细信息中选择文本

要在WebView 上进行文本选择,您可以使用以下 sn-p (from this question)。在(上下文)菜单中的按钮单击(或其他事件)上触发此事件。

private void emulateShiftHeld(WebView view)
    {
        try
        {
            KeyEvent shiftPressEvent = new KeyEvent(0, 0, KeyEvent.ACTION_DOWN,
                                                    KeyEvent.KEYCODE_SHIFT_LEFT, 0, 0);
            shiftPressEvent.dispatch(view);
            Toast.makeText(this, "select_text_now", Toast.LENGTH_SHORT).show();
        }
        catch (Exception e)
        {
            Log.e("dd", "Exception in emulateShiftHeld()", e);
        }
    }

【讨论】:

  • 你能更具体地了解选择事件吗
  • 我已经用更多细节更新了这个问题。显然它不像我想象的那样默认。看起来即使选择也需要一些自定义代码。示例添加到我的原始答案中。
【解决方案2】:

从 API 级别 11 开始,您可以使用TextView's textIsSelectable flag


编辑:尽管现在已经对问题进行了编辑,特别提到了 WebView,但 OP @Suhail 的评论“我的内容是 html 形式”并没有完全取消 TextView 的资格,因为它还可以呈现一些基本的 HTML。

【讨论】:

  • 在这个用例中你如何看待这与 webview 的结合?
  • @hcpl 问题未指定上下文,例如WebViewTextView
  • 确实,我会为此添加一个更正。仅在问题的 cmets 中提到这是针对 webview 的。
【解决方案3】:

如果您使用 WebView 尝试将 Mozilla PDF.JS 集成到可以呈现 PDF 的位置。其中也可以包含图像。

【讨论】:

    猜你喜欢
    • 2019-01-20
    • 2019-10-16
    • 2012-05-10
    • 2018-05-10
    • 2015-07-27
    • 1970-01-01
    • 2011-12-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多