5

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

我正在使用 aWebView因为我的内容是 html 形式。

基本上讲这个效果:

在此处输入图像描述

4

3 回答 3

0

如果您使用 WebView 尝试集成 Mozilla PDF.JS ,您可以在其中呈现 PDF 。其中也可以包含图像。

于 2014-07-08T04:50:46.767 回答
0

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

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

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

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

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

从 WebView 详细信息中选择文本

要使文本选择在 a 上起作用,WebView您可以使用以下代码段(来自此问题)。在(上下文)菜单中的按钮单击(或其他事件)上触发此事件。

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);
        }
    }
于 2013-05-24T10:16:37.750 回答
0

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


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

于 2013-05-24T10:19:47.390 回答