【问题标题】:Custom text selection color in webviewwebview中的自定义文本选择颜色
【发布时间】:2013-05-09 00:29:41
【问题描述】:

问题:

我们想改变 webview textselection 的颜色,使其显示与用户释放触摸相同的颜色。我已经完成了突出显示部分,但我找不到更改选择颜色的好方法。

尝试过的方法:

  • ::selection CSS : 这仅适用于桌面浏览器,不适用于 android webview。
  • 在onDraw中手动绘制选择区域:这很麻烦,因为我们必须自己管理坐标。

注意:

我见过很多电子书阅读器应用程序(Kindle、iBooks、aldiko、Moon+Reader)都有这个功能,但我真的找不到解决方案。

任何人都有解决方案,请告知。 谢谢

【问题讨论】:

  • 我一直在尝试做同样的事情。我对触摸一无所知,但是对于计算机,我正在考虑捕捉mousedownevent,然后是mousemove 事件,并希望能够(以某种方式)使用window.getSelection() 捕捉选择的像素位置。你的问题解决了吗?

标签: javascript android css pdf


【解决方案1】:

它几乎不依赖于浏览器。在很多浏览器中是行不通的,在其他浏览器中则非常不同。问题与 chrome 中的轮廓活动框架相同。

【讨论】:

    【解决方案2】:

    在您使用 Webview 显示的 HTML 内容之前包含一个 <style> 标记。

    html_text = "<style> ::selection{ background: #3F51B5; color:#FFFFFF; } </style> <body> YOUR_CONTENT</body>";

    相应地更改背景和文本颜色,然后将其传递给 Webview:

    your_webview.loadDataWithBaseURL(null, html_text, "text/html", "utf-8", null);

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-18
      • 2021-04-20
      • 2014-10-23
      • 2018-07-20
      • 1970-01-01
      • 1970-01-01
      • 2023-03-26
      • 2017-10-21
      相关资源
      最近更新 更多