传递字符串Segue Swift

时间:2017-04-25 22:32:07

标签: ios swift swift3 segue

我需要将此字符串值传递给另一个viewController。由于某种原因,我得到一个sigabrt错误。谁能指出我做错了什么?

需要将userIdentityString值传递给userCellTapped viewcontroller

ngModel

2 个答案:

答案 0 :(得分:5)

正确设置目标视图控制器变量的方法是在prepare(for segue ...)类中实现ViewController

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "profileTapped" {
        if let destination = segue.destination as? MyDestinationViewControllerType {
            destination.myVariable = myClassLevelVariable
        }
    }
}

答案 1 :(得分:0)

为了调用方法

destinationUID.performSegue(withIdentifier: "profileTapped", sender: userIdentityString)

您必须将带有标识符"profileTapped"的Segue添加到故事板中。方法中的发件人是您要传递的值。作为标识符,您应该传递该Segue的ID。

如果您想将一些数据传递给该控制器。 Yoy必须实施其他方法

func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "profileTapped", let vc = segue.destination as? UserCellTapped, let variable = sender as? String {
        vc.programVar = variable
    }
}