IOS:WKWebView中的文本选择(WKSelectionGranularityCharacter)

时间:2014-09-19 16:24:09

标签: ios textselection wkwebview

我有一个使用网页视图的应用,可以选择文字。长期以来,您无法在UIWebView中跨块边界选择文本,这一直是一个烦恼。 WKWebView似乎通过其配置上的属性来修复此问题:selectionGranularity。其中一个可能的值是WKSelectionGranularityCharacter

  

选择端点可以放置在任何字符边界。

听起来很棒!正是我需要的。除了当我在网络视图中设置它时,我经常无法再选择文本。到底是怎么回事?还有其他我需要设置的东西吗?有没有人想到这个?

更新:我发现了以下错误:

  1. selectionGranularity设置为WKSelectionGranularityCharacter的应用中有多个WKWebView时,只有最新加载的WKWebView才能选择文字。我已将此作为错误18441138提交。

  2. 如果将body设置为WKSelectionGranularityCharacter的WKWebView的HTML内容中的selectionGranularity内的元素附加了单击处理程序,则文本选择在该元素内部不起作用。我已将此归档为错误18440833。

  3. 在应用程序中的其他位置的UITextView上进入编辑模式后,WKWebView中的文本选择失败,直到WKWebView重新加载。我已将此作为错误18468405提交。

  4. 有没有人解决过这些问题?

2 个答案:

答案 0 :(得分:0)

这是几个仍未修复的已知错误。

您可以执行JavaScript来获取选定的文本,作为解决方法。

window.getSelection().toString()

Docs

答案 1 :(得分:0)

这些问题和其他问题自iOS 13起已全部修复。