iphone - UITableView 在 Forground 状态下 Enter 后不重新加载数据

标签 iphone ios uilocalnotification

我已经搜索了很多,但我没有找到解决方案,也不知道为什么会这样。

我正在创建和安排本地通知并在表格 View 中显示通知列表。当我的应用程序启动时,本地通知正在创建并显示在表中。但是按下主页按钮后,应用程序将进入后台,通知将在各自的时间设置上触发。发射后它们也从系统阵列中移除

[[UIApplication sharedApplication] scheduledLocalNotifications]

当我再次打开应用程序时,它会激活并进入前台状态。并且在应用程序中委托(delegate)方法正在调用

 - (void)applicationDidBecomeActive:(UIApplication *)application
        {
            AnotherClass *class = [[AnotherClass alloc]init];
               [class afterBecomeActive];
        }

这是 AnotherClass 的实现。我必须在其中刷新表格..

 -(void) afterBecomeActive
    {
        [tableView reloadData];
    }

该 TableView 未重新加载数据或刷新数据,包含本地通知列表。所有通知都按原样显示,委托(delegate)方法没有调用。 请帮忙。

最佳答案

在包含 tableView 的类中执行此操作。要求获得有关 ApplicationDidBecomeActive 的通知。

- (void)awakeFromNib {

    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(applicationDidBecomeActive:)
                                                 name:UIApplicationDidBecomeActiveNotification object:nil];
}

收到通知后,重新加载表格。

- (void)applicationDidBecomeActive:(NSNotification *)notification {

    [self.tableView reloadData];
}

应用程序委托(delegate)中的代码可以删除。其他人是正确的:它只是分配一个新的 View Controller ,向它发送一条消息并将其丢弃。

关于iphone - UITableView 在 Forground 状态下 Enter 后不重新加载数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18146862/

相关文章:

ios - 当应用程序在后台时,UserNotificationCenterDelegate 的 willPresent 的替代方案

ios - 尝试在iPhone上运行应用时,Xcode错误达到最大应用限制

ios - 使用NSDictionaryResultType获取属性时,是否可以将sectionKeyPath与NSFetchedResultsController一起使用?

iphone - UIViewController调用对方的delegate

iphone - 发件人标签总是返回 1

iphone - iOS:Segues 与 IBAction?

ios - 重复和取消 UILocalNotification

swift - 两个本地通知一起安排并一起显示,但我在 swift 中有不同的时间

iphone - 我的套装中有iPhone系统声音

iphone - 如何使 'int'到 'string'具有特殊格式?