我创建了7个视图控制器,每个视图控制器都有几个文本字段。 我需要从所有视图控制器收集数据并在最后一个中发出API请求。
传递这些数据的最佳模式是什么?
我正在考虑通过prepareForSegue方法传递一个自定义模型对象,但它对于维护来说太复杂了。
此外,我正在考虑使用singleton / NSUserDefaults,但它并不完美。
答案 0 :(得分:1)
Singleton不是完美的方式,因为它会轻易搞砸你的记忆管理。与NSUserDefaults相同(+它只吃某些类并保留可能不应该保留的数据)。
只需将对象从视图控制器传递到视图控制器即可。
如果您发现7个视图控制器难以维护,那么您的用户可能会发现7个视图控制器也难以处理。
如果目标视图controntroller也是一种类型的BaseViewController,你也可以有一个公共的BaseViewController来传递prepareForSegue:
中的一个对象。