Получить позицию курсора при нажатии клавиши ввода - PullRequest
0 голосов
/ 10 января 2019

Я бы хотел, чтобы пользователь разделял UITextField при нажатии клавиши ввода в режиме редактирования. Что-то вроде:

foo | bar (вертикальная черта - курсор) - теперь я нажимаю enter

и я хотел бы создать новый UITextField внизу, который должен выглядеть следующим образом:

Foo

бар

Но я не могу получить позицию курсора, когда нажимаю ввод. Я попробовал этот фрагмент:

    if let selectedRange = field.selectedTextRange {
        let cursorPosition = field.offset(from: field.beginningOfDocument, to: selectedRange.start)
        print("\(cursorPosition)")
    }

Но возвращается 6 вместо 3. Похоже, что нажатие клавиши Enter сначала заставит курсор перейти к концу текущего слова, а затем выполнит мой фрагмент. Я попытался поместить его в textFieldShouldReturn, textFieldShouldEndEditing, а также в случае UITextField Did End On Exit с теми же результатами.

Есть ли способ предотвратить скачок курсора или есть другой способ его решения? Я новичок в разработке для iPhone, поэтому я могу упустить что-то очевидное ...

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