我有一个带有3个标签收件箱,联系人和设置的应用程序。
在收件箱中,有一个来自其他用户的消息列表,我使用函数reloadTableViewDataSource
更新消息,现在我必须在应用程序进入前台时重新加载或刷新消息。
为实现这一目标,我在appdelegate中提供了以下代码。
- (void)applicationWillEnterForeground:(UIApplication *)application {
application.applicationIconBadgeNumber=0;
Inbox *inbox=[[Inbox alloc]init];
inbox.userid=self.usermail;
inbox.password=self.password;
inbox.loggedInUserId=self.loggedinUserId;
[inbox reloadTableViewDataSource];
}
更新的方法似乎被调用,因为我看到有关更新的nslog
消息但是在收件箱视图控制器中实际上没有发生任何事情,新消息未刷新,这样做的正确方法是什么?
答案 0 :(得分:2)
在我看来,您创建了一个新的收件箱对象并刷新其内容。 但您真正想要的是刷新当前显示的收件箱对象的数据。
所以你需要做的是持有对ViewController中使用的Inbox对象的引用。并在该引用上调用reloadTableViewDataSource。
希望这个问题......