【问题标题】:iOS Perform method in another ViewController另一个 ViewController 中的 iOS Perform 方法
【发布时间】:2012-10-19 21:12:33
【问题描述】:

我有一个FethViewController 和一个DisplayViewController...

FethViewController 有一个从 web 服务获取 JSON 的方法。

我想访问那个 JSON 对象,或者在 DisplayViewController 中执行 fetch 方法。

我该怎么做?我试过this,但没用。

请帮忙。

【问题讨论】:

  • 这些控制器中的任何一个是您的根视图控制器吗?它们与应用委托之间是什么关系?
  • 两者都不是 rootview 控制器。 displayviewcontroller 是选项卡界面中的第二个视图。 fethviewcontroller 用于标签栏界面之前的视图。即您通过 feth 视图转到标签栏界面。

标签: objective-c ios json methods


【解决方案1】:

如果不了解您的应用程序架构的更广泛背景,我会说您有两种选择:

  1. 依赖注入 - 由于您在视图的上下文中获取 JSON,该视图位于同样需要 JSON 的远端视图之前,因此一种选择是沿层次结构传递 JSON 对象 - 即传递给您的 UITabBarController等我相信您在问题中发布的链接是指依赖注入。当你说“它不起作用”时,我不确定你的意思。
  2. 使 JSON 对象成为 单例类的属性 - 也许您可以创建一个单例类来管理网络访问。然后,在您的对象图中具有钝关系的对象可以访问网络和网络调用的结果,而无需依赖注入的混乱。

最后,我并不是说其中任何一个比另一个更好(或比其他替代方案更好),因为我们对您的应用程序的目标和剩余架构知之甚少。

【讨论】:

  • +1 表示第一个选项。为此使用单例是愚蠢的(恕我直言)。
  • 同意(通常)——在这种情况下很难说没有更多细节。
猜你喜欢
  • 2023-03-08
  • 2018-04-27
  • 1970-01-01
  • 1970-01-01
  • 2012-05-10
  • 1970-01-01
  • 2012-10-03
  • 1970-01-01
  • 2016-05-06
相关资源
最近更新 更多