0

我将会议日期列表从服务器下拉到我的应用程序。我解析所有这些并将它们保存为 NSDates。

给出一个用例更容易:

  1. 用户下拉会议日期
  2. 用户导航到应用程序的另一个部分
  3. 如果距离各自的会议时间还有 15 分钟,则在他们所在的任何视图中显示警报。

除了通知应用程序时间即将开始的方法外,我已完成上述所有工作。

我猜这是 NSNotificationCenter 的最佳时机。

所以我的问题是,如果我有一系列 NSDates,如何持续监控一个 15 岁以外的人?

4

1 回答 1

0

使用下面的代码来安排通知:只需给出 firedate = (date_saved-15minutes)

   UILocalNotification *localNotif = [[UILocalNotification alloc] init];

    if (localNotif == nil)
        return FALSE;

    localNotif.fireDate = fireDate;
    localNotif.repeatInterval = repeatInterval;
    localNotif.timeZone = [NSTimeZone defaultTimeZone];

    localNotif.alertBody = @"Meeting";

    // Set the action button
    localNotif.hasAction = YES;

    localNotif.alertAction = NSLocalizedString(@"Show",nil); 

    localNotif.soundName = UILocalNotificationDefaultSoundName;

    localNotif.applicationIconBadgeNumber = 1;


    /* SCHEDULE NOTIFICATION */
    [[UIApplication sharedApplication] scheduleLocalNotification:localNotif];

这样做也在 appdelegate.h 中声明一个属性 localNotification 并拦截通知,然后如下所示:

UILocalNotification *localNotification;
@property (nonatomic, retain) UILocalNotification *localNotification;
@synthesize localNotification;


- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification {

    self.localNotification = notification;
    NSLog(@"NOTIFICATION - DID RECEIVE");
}


- (void)applicationDidBecomeActive:(UIApplication *)application
{
    if (self.localNotification) 
    {
         // Do whatever you want
    }
}
于 2012-10-12T18:26:35.817 回答