Отключение выбора пользователя в UIWebView - PullRequest
118 голосов
/ 13 мая 2011

У меня есть приложение, в которое я загружаю контент в UIWebView и представляю это. Я не могу полностью отключить взаимодействие с пользователем, потому что хочу, чтобы пользователь мог нажимать на ссылки. Мне просто нужно отключить выбор пользователя. Я нашел где-то в Интернете, что вы можете использовать:

document.body.style.webkitUserSelect='none';

Я попытался вставить это как

[self.contentView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitUserSelect='none';"]; 

в webViewDidFinishLoad:

Однако это не работает. Я все еще могу выбрать и скопировать текст в WebView.

Есть идеи, что может пойти не так?

Обновление: похоже, это происходит только с iOS 4.3

Ответы [ 12 ]

2 голосов
/ 12 сентября 2015

Для меня я намеревался получить изображения NSData из UIWebView по LongPressGesture.

Но функции увеличения и копирования / вставки / вырезания всегда выполняются до выполнения моей функции.

И я нашел это: enter image description here

Это означает, что для выполнения увеличителя и копирования / вставки / вырезания требуется 0,5 с, поэтому, если ваша функция может быть выполнена за 0,49 с, ВЫПОЛНЕНО!

self.longPressPan.minimumPressDuration = 0.3
0 голосов
/ 13 марта 2015

Использовать функцию интерактивного просмотра

   webView.userInteractionEnabled = false

у меня работает

PS: не забудьте включить взаимодействие, когда вы хотите, чтобы пользователь снова мог взаимодействовать с веб-представлением

...