Intereting Posts
Возможность подключения iPhone для эмулятора Ford SYNC Applink ™ Ошибка при добавлении вывода UIImageView в tableViewCell Раздражающий TableView при использовании API Twitter AFNetworking конвертирует мои значения String в целые числа при возврате JSON? Каким классом размера является iPhone 5s, а какой класс размера – iPhone 6? Взаимные друзья двух пользователей, которые не являются друзьями на facebook, используя Parse и Facebook SDK NSURLConnection, поведение NSOperationQueue между IOS 5 и IOS6 – блокировка UI! – Что не так с моим способом изменения фонового изображения UIBUtton? Получить имя дней между двумя датами в ios? Как обновить быстрые анкеры компоновки? «Запуск процесса не выполнен: при попытке запустить приложение» при запуске приложения AdHoc как открыть .dcm изображения в приложении ios с помощью Objective C Mashape Objective-C для iOS – MashapeResponse для объекта JSON Как вставить новый шрифт и заставить изменение в UIButton? Проблема с API Google Адресов в iOS 6.1?

UITextInput возвращает нулевую позицию только в iOS 9

Я пытаюсь получить прямоугольник определенного диапазона ( UITextRange ). Проблема в том, что код отлично работает с iOS 10 , и я получаю диапазон и прямоугольник. К сожалению, с iOS 9 линия:

 if let rangeStart = textInput.position(from: textInput.beginningOfDocument, offset: location) 

возвращает nil

 let location = self.textView.firstRect(for: range) extension NSRange { func toTextRange(textInput:UITextInput) -> UITextRange? { if let rangeStart = textInput.position(from: textInput.beginningOfDocument, offset: location), let rangeEnd = textInput.position(from: rangeStart, offset: length) { return textInput.textRange(from: rangeStart, to: rangeEnd) } return nil } } 

textView.isSelectable = true

Эта строка необходима в iOS 9 (не требуется в iOS 10).