Segue无法正常工作-根据第一个视图控制器中按下的按钮,第二个视图控制器中的标签未更改

时间:2018-11-15 11:38:30

标签: xcode label segue textfield

我有一个具有2个按钮和2个文本字段的视图控制器,以及另一个具有1个标签的视图控制器。现在,如果我按下buttonOne,第二个视图控制器中的标签将更改为“文本字段1”,而当我按下buttonTwo时,同一标签将再次显示“文本字段1”。理想情况下,我希望标签在按下buttonOne时显示“文本字段”,在按下buttonTwo时显示“文本字段1”。以下是使用的2个视图控制器和我正在使用的情节提要的屏幕快照。任何帮助表示赞赏。

Simulator

Storyboard

第一视图控制器:

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   
}

0 个答案:

没有答案