1

假设我有三个接口控制器,它们都通过 push segues 链接。

InterfaceController1-pushSegue-> InterfaceController2-pushSegue->InterfaceController3

InterfaceController1 有一个表格,它将容纳下面类的数据。

所以,假设我有课:

class manageData {
    var data1:String?
    var data2:String? 
}

这个类应该保存来自InterfaceController2和的数据InterfaceController3

所以 InterfaceController1 创建一个对象并使用该方法manageData将其传递给 InterfaceController2 。InterfaceController2 然后将其数据添加到 manageData 对象,并使用该方法contextForSegueWIthIdentifier将其传递给 InterfaceController3 。contextForSegueWIthIdentifier

现在我的问题是,一旦 InterfaceController3 将其数据添加到对象,我如何将完整的对象传递回 InterfaceController1 并填充数据,以便 InterfaceController1 可以将数据添加到表中?希望我已经说得够清楚了。我没有任何实际代码来表示这一点,因为我还不知道如何实现它。

4

1 回答 1

1

所以我解决这个问题的方法是创建一个单例类,它在不同的控制器中保存我的所有数据。然后当我到达最后一个控制器并将我的数据发送到单例时,我会弹回根控制器。

当我回到根控制器时,在 awake 方法中,我调用了一个我调用的函数,该函数loadTableData()在单例唤醒时自动从单例获取信息并将其加载到表中。现在似乎工作得很好,但我不知道这种方法可能会出现任何潜在问题。

于 2019-11-19T21:57:04.033 回答