【问题标题】:How to reference variables in multiple IOS View Controllers如何在多个 IOS 视图控制器中引用变量
【发布时间】:2012-08-15 04:40:22
【问题描述】:

我问的是什么可能是一个基本问题,但我对 iOS 和面向对象编程相对较新:

问题: 如果我有一个简单的应用程序,其中包含 2 个视图和视图控制器,它们从每个视图控制器接收输入,我应该如何构建我的程序,以便我可以引用在每个视图控制器中输入的值并获取这些值,将它们加在一起(例如),然后将其输出到说第三个视图控制器?

如果这一切都在同一个控制器中完成,那么我可以做到,但问题是我可以将它存储在哪里,以便数据可以跨多个控制器使用?

从根本上说,我不确定应该在哪里进行“处理(添加)”。这应该在另一个类还是 AppDelegate 中?这在 MVC 中被称为“模型”吗?多个视图控制器可以引用同一个模型吗?

我确信这确实是基本的东西,但是一个示例或对材料的参考确实有助于我澄清这一点。

谢谢

【问题讨论】:

    标签: ios model-view-controller design-patterns xamarin.ios monodevelop


    【解决方案1】:

    我的个人模式是模型-视图-控制器模式的变体。对于每个屏幕,我都有一个 ViewController、一个 UIView、一个用于保存视图显示的数据的模型类和一个用于保存该视图的所有业务逻辑的辅助类。这些类相互引用,因此如果您知道其中一个,您就可以访问其他类。我还将我的模型类和辅助类链接到与控制器层次结构相对应的层次结构中,这就是我解决您描述的问题的方式。对于给定的视图,您可以访问它的帮助程序和模型类实例,然后您可以从那里导航到整个应用程序的任何帮助程序和模型实例。

    可能有更好的方法可以做到这一点,但我就是这样做的。

    【讨论】:

      【解决方案2】:

      您可以使用 NSUserDefaults 来存储共享数据,也可以将自己的共享存储对象实现为singletonhere's 一个使用演示项目在 obj-c 中创建单例对象的教程。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-12-31
        • 1970-01-01
        • 1970-01-01
        • 2012-12-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多