У меня есть контроллер представления, который имеет 2 кнопки и 2 текстовых поля, и второй контроллер представления, который имеет 1 метку. В тот момент, когда я нажимаю на кнопку «один», метка во втором контроллере представления меняется на «текстовое поле 1», а когда я нажимаю кнопку «два», эта же метка снова отображает «текстовое поле 1». В идеале я хочу, чтобы метка отображала «текстовое поле» при нажатии кнопки «один» и «текстовое поле 1» при нажатии кнопки «два». Ниже приведены 2 используемых контроллера представления и снимок экрана раскадровки, которую я использую. Любая помощь приветствуется.
Simulator
Раскадровка
Контроллер первого вида:
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var textField: UITextField!
@IBOutlet weak var textField1: UITextField!
var isButtonClicked: Bool = false
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
isButtonClicked = false
}
@IBAction func buttonOne(_ sender: Any) {
if textField.text != "" {
isButtonClicked = true
performSegue(withIdentifier: "segue", sender: self)
}
}
@IBAction func buttonTwo(_ sender: Any) {
if textField1.text != ""{
isButtonClicked = true
performSegue(withIdentifier: "segue", sender: self)
}
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
var secondController = segue.destination as! SecondViewController
secondController.myString = textField.text!
secondController.myString = textField1.text!
}
Контроллер второго вида:
import UIKit
class SecondViewController: UIViewController {
@IBOutlet weak var label: UILabel!
var myString = String()
}
override func viewDidLoad() {
super.viewDidLoad()
label.text = myString
}