У меня есть приложение, которое использует веб-представление, где можно выделить текст. Давно раздражало, что вы не можете выделять текст за границей блока в UIWebView. WKWebView, кажется, исправляет это с помощью свойства в его конфигурации: selectionGranularity
. Одним из возможных значений является WKSelectionGranularityCharacter
:
Конечные точки выделения могут быть размещены на любой границе символа.
Звучит здорово! Именно то, что мне нужно. За исключением того, что когда я устанавливаю это в моем веб-представлении, я часто больше не могу выбирать текст вообще. Что здесь происходит? Есть ли что-то еще, что мне нужно установить? Кто-нибудь понял это?
Обновление: я обнаружил следующие ошибки:
-
Если в приложении имеется более одного WKWebView с параметром
selectionGranularity
установлено значениеWKSelectionGranularityCharacter
, текст может быть выбран только самым последним из них для загрузки. Я подал это как ошибку 18441138. -
Если имеется обработчик щелчка, прикрепленный к элементу внутри
body
в HTML-содержимом WKWebView, для которогоselectionGranularity
присвоено значение WKSelectionGranularityCharacter, выделение текста внутри этого элемента не работает. Я подал это как ошибка 18440833. -
Выбор текста не выполняется в WKWebView после того, как вы вошли в режим редактирования в UITextView где-то еще в приложении, пока WKWebView не перезагрузится. Я подал это как ошибка 18468405.
Кто-нибудь работал с любым из них?