@Lexemz

Как переключать текстовые поля в ячейках tableview по нажатию return на клавиатуре?

Здравствуйте, есть UITableView, с кастомными ячейками, состоящими из одного UITextField.

62725922a2b84268083949.jpeg

При создании ячейки в методе tableview(_: cellForRowAt:) в значение ячейки textField.delegate устанавливаю класс таблицы, как делегат
class MyTableViewController: UITableViewController {
    // ...
    override func tableView(
        _ tableView: UITableView,
        cellForRowAt indexPath: IndexPath
    ) -> UITableViewCell {
        // cell creating
            
        cell.textField.delegate = self
        return cell   
    }
}


Как можно реализовать метод textFieldShouldReturn(_:) так, чтобы поля переключались из одной ячейки в другую?
extension MyTableViewController: UITextFieldDelegate {
    func textFieldShouldReturn(_ textField: UITextField) -> Bool {
        // ?
        return true
    }
}
  • Вопрос задан
  • 147 просмотров
Пригласить эксперта
Ответы на вопрос 1
Furist
@Furist
iOS Developer
Чтобы переключить фокус на следующую ячейку, нужно использовать becomeFirstResponder()

Есть реализация, но на Objective-C. Что-то подобное можно найти и на Swift:
https://stackoverflow.com/a/41955553/10396231

Шаги такие:
1. Используя indexPath, достаём следующую ячейку
2. У textField следующей ячейки вызываем becomeFirstResponder()
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы