Отключение увеличительного стекла в UITextView в приложении для iPhone - PullRequest
1 голос
/ 04 апреля 2010

Я хочу отображать текст и хочу знать, где в этом тексте пользователь касается. Поскольку текст может быть длинным, я хотел использовать UITextView, чтобы позаботиться обо всем. Я хочу, чтобы моя собственная обработка событий начиналась или двигалась. Моя проблема в том, что увеличительное стекло и меню «выбрать / выбрать все» прерывают мои события touchesMoved.

Как я могу отключить увеличительное стекло, но при этом включить взаимодействие с пользователем, чтобы я мог обнаружить прикосновения?

Ответы [ 3 ]

4 голосов
/ 22 декабря 2013

Вы должны создать подкласс и переопределить эти две функции, чтобы отключить select/select all/copy/ и magnifying

select/select all/copy/

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender

Ссылка: https://stackoverflow.com/a/1429320/1526023

magnifying

- UILongPressGestureRecognizer
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer

Ссылка: https://stackoverflow.com/a/10641203/1526023

1 голос
/ 21 октября 2011

Я бы предложил проверить свойство gestRecognizers .

Вы найдете их много в массиве и, возможно, захотите удалить их все или найти те, которые вызывают событие, которое вы хотите перехватить, и удалить / заменить его.

Я использовал его для удаления функций копирования / вставки и увеличительного стекла из UITextField

0 голосов
/ 30 мая 2010

Вы можете попробовать советы, предлагаемые здесь: Как отключить копирование, вырезание, выделение, выделение всего в UITextView

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...