【问题标题】:Refresh split view刷新拆分视图
【发布时间】:2014-03-24 10:57:52
【问题描述】:

我有一个通用应用程序,其中包含项目列表(从后端加载)和项目详细信息(也从后端加载)。每个视图控制器都会监听UIApplicationDidBecomeActiveNotification,以便在用户(重新)打开应用程序时刷新视图。到目前为止有效。

现在我的问题。在 iPad 上,我有一个拆分视图。因此,当用户(重新)以横向打开应用程序时,两个视图都会重新加载。如果没有与后端的连接,用户会收到两个带有重试/取消选项的警报,一个在另一个之上。这不是我想要的...我有一个不需要连接到后端的默认项目,我想将其设置为选中并在详细视图中显示其详细信息。总是当最初选择的项目在主视图中丢失时。

到目前为止我做了什么...在我的主视图控制器中,我检查刷新后所选项目是否可用,如果不可用,我会更新选择和详细视图。当以正确的顺序处理来自左侧和右侧窗格的请求时,这应该可以解决问题。但是,目前两个视图控制器都获取UIApplicationDidBecomeActiveNotification 并向后端发出异步请求。

有人有刷新拆分视图的经验吗?解决我的问题的正确方法是什么?我真的不想引入额外的通知/复杂性。我希望,有一些标准的方法来重新加载数据。

【问题讨论】:

    标签: ios objective-c ipad uisplitviewcontroller reload


    【解决方案1】:

    嗯,我找到了解决办法。

    我为每个视图控制器创建一个属性alertView 并将显示的警报视图存储在那里。在viewWillDisappear 中,我关闭了这个警报视图。因此,当我的默认项目的详细信息显示在右侧时,“旧”控制器的警报视图被关闭,我只有一个警报视图。

    这肯定不是完美的解决方案,如果有人能给我一个更好的解决方案,我会很高兴。但就目前而言,这很好用。

    【讨论】:

      猜你喜欢
      • 2012-08-22
      • 2014-12-08
      • 2023-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-03
      • 2016-11-24
      相关资源
      最近更新 更多