0

我有两个接口控制器,其中 FirstInterfaceController 是我想要发送到 SecondInterfaceController 的上下文对象的接口控制器。我想知道为什么当我点击 buttonAction 时上下文显示为 0 时,上下文显示为 nil。

元数据定义如下:

class Metadata {
    var x = 0

    init (x_parameter: Int) {
        x = x_parameter
    }    
}

这是我对 FirstInterfaceController 的定义:

class FirstInterfaceController: WKInterfaceController {

    var metadata = Metadata(x: 1)

    @IBAction func buttonAction() {
        metadata.x = 0

        // Use pushControllerWithName for a push segue
        pushController(withName: "Ten Point Tiebreaker", context: metadata)
    }
}

这是我的 SecondInterfaceController 标识符 在此处输入图像描述

下面是 SecondInterfaceController 的定义:

class SecondInterfaceController: WKInterfaceController {

    override func awake(withContext context: Any?) {
        super.awake(withContext: context)
        print("context: \(String(describing: context))")    // This prints nil

        // Configure interface objects here.
        if let metadata = context as? Metadata {
            print("x: \(metadata.x)")
        }
    }
}
4

1 回答 1

0

我遇到的问题是我也有一个 Push segue,所以这导致了一些问题。我刚刚删除了 Push segue,它工作正常。

于 2017-07-07T05:24:18.710 回答