Для этой проблемы могут быть разные подходы, но я бы создал stackView
в НОВОМ контроллере представления с максимально возможным количеством встроенных textFields
.Допустим, ВК с большинством текстовых полей может содержать 3 текстовых поля.Создайте свой stackView с 3 textFields
внутри.
Затем передайте indexPath.row tableView на новый VC, он может содержать переменную типа Integer, например:
var index: Int?
In didSelectRowAt
метод tableView:
performSegue(withIdentifier: "yourIdentifier", sender: indexPath.row)
In prepareForSegue
метод:
if segue.identifier == "yourIdentifier"
let vc = segue.destination as! NEWViewController
vc.index = sender
Установите тег для ваших textFields в вашем контроллере NEW View, чтобы вы могли знать, какой textField вы захотитеудалить в зависимости от индекса.Затем в viewDidLoad вашего newViewController вы можете удалить textFields из вашего stackView в соответствии с индексом (тогда вы можете столкнуться с каким):
var counter = 0
while counter < index {
answerStackView.subviews.forEach { (view) in
if counter < index {
if view is UITextField {
if view.tag == /*something here to delete specific textFields depending on index. */ {
view.removeFromSuperview()
}
}
}
counter += 1
}
}