У меня есть динамическое табличное представление с 3 (ячейка1, ячейка2, ячейка3) пользовательскими ячейками, которое используется повторно от 0 до 9 раз. (Максимальное количество ячеек в табличном представлении будет 27 ячеек).
Каждая из этих 3 пользовательских ячеек имеет 3 текстовых поля в каждом, и, кроме того, вторая ячейка имеет 2 кнопки для выбора пола, а 3-я пользовательская ячейка имеет раскрывающееся меню, в котором есть значения, введенные в первом текстовом поле ячеек ячейки 1. .
Теперь проблема в том, что текстовое поле принимает сенсорный ввод от пользователя (как и должно быть), и didselectrowat никогда не вызывается, и поэтому я не получаю indexPath.
Но мне нужен indexPath, чтобы я мог вставлять пользовательские данные из каждой из этих ячеек в массив.
(anArray.insert("", at: indexPath)
Так как я не получаю indexPath, все терпит неудачу. Как я могу получить indexPath и получить прикосновение к текстовому полю?
Я имею в виду что-то вроде функции, которая берет прикосновение, получает indexPath и затем передает управление в текстовое поле.
То, что я пробовал.
Я отключил текстовые поля до того, как пользователь коснулся ячейки (и сделал текстовые поля отключенными, как только пользователь отменил выбор ячейки, поэтому ячейка берет касание. Как только didselectrowat вызывается, сделайте текстовое поле активным снова и сделайте
textbox.becomeFirstResponder()
Но каким-то образом текстовое поле никогда не становится первым респондентом, даже если точка останова показывает проходящий через него элемент управления, и текстовое поле становится активным. Но не всплывающее окно с клавиатурой, если я снова коснусь ячейки, произойдет тот же процесс.
В чем здесь проблема? Я видел другой пост на ту же тему, я попробовал, но, к сожалению, это не работает, и это было для статического просмотра таблицы.
Также есть хороший способ сделать это? За исключением того, что пользователь дважды щелкает по ячейке / щелкает вне текстового поля.