3

长期读者,第一次在这里发布海报。

我正在创建一个测试应用程序,它创建一个 NSURLConnection,然后在 UILabel 上显示结果。

我目前正在使用通知中心观察者,它会从 connectionDidFinishLoading 中触发通知以等待连接成功完成,然后再查找结果。

但是,我正在努力概念化的是存储响应数据的位置,以便我可以从我的视图控制器访问它并将结果发布到 UILabel。(或者从我的连接类的实例以外的任何地方,就此而言。)

我不想从 connectionDidFinishLoading 直接发布到 UILabel。我需要一种方法来决定稍后我将如何处理响应 - 所以我的连接类保持通用化。

我需要一种更好的方法将响应数据保存在某处,以便在连接类的实例终止后可以在其中引用它。

理想情况下,它应该在某个地方我可以打开连接类的多个实例,并在需要时依次访问每个响应。这消除了在我的视图控制器或其他更全局的地方创建一个变量并将响应转储到它的可能性。

任何关于在这里可以/应该使用什么设计模式的想法都将不胜感激!

4

1 回答 1

1

我对您的建议是:

  1. 做一个单例类。我将有一个属性 NSDictionary * info 或 NSArray *infoList; 您可以从应用程序的任何位置访问相同的数据。更新属性,发布通知,从 viewController 访问属性。
  2. 将信息存储到 plist/文件中。序列化信息,或保存纯流。无论您喜欢什么。因此,在您完成对文件的写入后,发布通知,从应用程序内的任何位置读取文件。

在这两种情况下,如果您想要多个连接,我建议您使用工厂设计模式。

于 2012-04-29T08:12:06.940 回答