在没有Segue的第一个ViewController上单击按钮时更改第二个ViewController的标签文本

时间:2018-01-19 00:51:53

标签: ios iphone swift uitableview uiviewcontroller

我有一系列10个问题,人们可以通过按下按钮来回答(3个选项)。我想在滚动测试时更改第二个VC上的标签。

到目前为止,我已将我的按钮设置在我的第一个VC中,这是我不知道要编写哪些代码以便更改第二个VC中的标签的地方:

@IBAction func levreun(_ sender: Any) {
    levrescore = 1
    print(levrescore, "sèches, gercées ou rouges")
} 

(打印下是我要发送到第二个VC上的标签的信息)

这就是我在第二个VC中将我的标签准备为String的方式:

@IBOutlet var LevreResultText: String!   

override func viewDidLoad() {
    super.viewDidLoad()
    LevreResultText.text = LevreResultText
}

编辑:请注意,我不想在测试结束时按下COMPLETE之前执行segue。所以标签在回答10个问题时必须改变!

1 个答案:

答案 0 :(得分:0)

您可以在Second VC中创建静态字符串变量。 当你点击第一个VC中的按钮时,你可以改变静态变量的变量。

在Second VC的ViewDidLoad函数中,您可以将标签文本更改为静态变量。

First VC

@IBAction func levreun(_ sender: Any) {

    levrescore = 1
    print(levrescore, "sèches, gercées ou rouges")

    SecondVC.staticLabelText = "sèches, gercées ou rouges"
} 

第二个VC

static var staticLabelText = ""
@IBOutlet var LevreResultText: String!   

override func viewDidLoad() {
    super.viewDidLoad()

    LevreResult.text = 
    SecondVC.staticLabelText
}