【问题标题】:iphone - Problem loading a table view inside a viewcontrolleriphone - 在视图控制器中加载表格视图时出现问题
【发布时间】:2011-08-02 20:36:09
【问题描述】:

我有一个 TabBarController,它由三个选项卡组成,其中一个是设置选项卡。我正在尝试将应用程序的设置与 NSUserDefaults + settings.bundle 以及我在设置选项卡中的应用程序设置同步。当我更改 settings.bundle 设置时,我使用了一个观察者,它为应用内设置设置属性。

我遇到的问题是,如果我进入应用程序,转到设置选项卡,然后退出应用程序,转到设置捆绑设置,更改设置,然后返回设置选项卡,设置不会不刷新,因为 table.reloadData 没有被调用。当观察者被调用时,我尝试从我的 AppDelegate 显式调用它,但我在页面上看不到任何变化。

以前有人遇到过这样的问题吗?如何刷新表/视图?

【问题讨论】:

    标签: iphone objective-c ios uitabbarcontroller nsuserdefaults


    【解决方案1】:

    您应该在您的应用委托中使用 applicationWillEnterForeground:。从标签栏控制器维护对设置视图控制器的引用,然后让您的应用委托调用标签栏控制器中的方法,然后从那里设置视图控制器。

    【讨论】:

      【解决方案2】:

      在您的设置视图控制器的viewDidAppear 方法中,调用[self.tableView reloadData]。这将在每次出现设置屏幕时重新加载表格视图中的数据。

      【讨论】:

      • viewDidAppear 在这种情况下不会被调用,因为我退出应用程序并且当我重新进入时应用程序只是移动到前台
      • 正确,因此您应该在应用程序委托中使用 applicationWillEnterForeground:。从标签栏控制器维护对设置视图控制器的引用,然后让您的应用委托调用标签栏控制器中的方法,然后从那里设置视图控制器。
      • @Alexander 谢谢,成功了!你想把你的评论变成答案吗?那我就接受了。
      猜你喜欢
      • 2011-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-14
      • 1970-01-01
      相关资源
      最近更新 更多