iphone - 在视图控制器中加载表格视图时出现问题

Posted

技术标签:

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

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

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

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

【问题讨论】:

【参考方案1】:

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

【讨论】:

【参考方案2】:

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

【讨论】:

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

以上是关于iphone - 在视图控制器中加载表格视图时出现问题的主要内容,如果未能解决你的问题,请参考以下文章

在导航视图控制器中加载特定视图

从包中加载 NIB 时出现异常

如何在页面视图控制器中添加表格视图控制器

搜索控制器处于活动状态时出现表格视图时隐藏的第一行

如何在表格视图单元格中加载内容视图?

在 ios 中加载更多表格视图