Objective-c,将NSURLConnection结果传递给View Controller

时间:2012-04-29 05:12:10

标签: objective-c ios design-patterns nsurlconnection

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

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

我目前正在使用Notification Center观察器,它在查找结果之前从connectionDidFinishLoading中触发通知以等待连接成功完成。

然而,我正在努力构思的是存储响应数据的位置,以便我可以从View Controller访问它并将结果发布到UILabel。 (或者从我的Connection类的实例以外的任何地方,就此而言。)

我不想从connectionDidFinishLoading直接发布到UILabel。我需要一种方法来决定稍后我将对响应做些什么 - 所以我的连接类保持一般化。

我需要一种更好的方法来保存响应数据,我可以在Connection Class的实例终止后引用它。

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

关于可以/应该使用哪些设计模式的任何想法都将非常感谢!

1 个答案:

答案 0 :(得分:1)

我建议你开始:

  1. 制作单身课程。我将有一个属性NSDictionary * info或NSArray * infoList;您可以从应用程序的任何位置访问相同的数据。更新属性,发布通知,从viewController访问属性。
  2. 将信息存储到plist /文件中。序列化信息,或保存纯流。无论你喜欢什么。在你写完文件之后,发布通知,从应用程序中的任何地方读取文件。
  3. 在这两种情况下,如果你想要多个连接我建议去工厂设计模式。