簡體   English   中英

iPhone中的本地通知

[英]Local Notification in iphone

以前,我曾處理本地通知,但現在遇到了問題。 假設今天,我必須在我的應用中為日期1天前的通知設置:07/07/2012。 我將如何做到這一點。 我正在這樣設置通知。

- (IBAction) scheduleNotification:(id) sender {

    AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
    NSDateFormatter *formatter = [[[NSDateFormatter alloc]init]autorelease];

    for (int i = 0; i< [delegate.viewController.contactList count] ; i++) {
        UILocalNotification *localNotification = [prototypeNotification copy];
        NSString *name = [[delegate.viewController.contactList objectAtIndex:i]objectForKey:NAME_KEY];
        NSString *birthday = [[delegate.viewController.contactList objectAtIndex:i]objectForKey:BIRTHDAY_KEY];
        if (birthday) {
            [formatter setDateFormat:@"MM/dd/yyyy"];
            NSDate *date = [formatter dateFromString:birthday];
            if (date == nil) {
                [formatter setDateFormat:@"MM/dd"];
                NSDate *date = [formatter dateFromString:birthday];
            }
            else {

            }
            self.alarmTime = [date dateByAddingTimeInterval:10];
            localNotification.fireDate = alarmTime;
            localNotification.timeZone = [NSTimeZone defaultTimeZone];
            localNotification.applicationIconBadgeNumber = 1;

            NSString *itemName = @"B'day Alert!!!";
            NSString *msgName = [NSString stringWithFormat:@"Celebrate %@'s B'day",name];
            NSDictionary *userDict = [NSDictionary dictionaryWithObjectsAndKeys:itemName,MessageKey, msgName,TitleKey, nil];
            localNotification.userInfo = userDict;
            localNotification.soundName = self.soundName;
            // Schedule the notification
            [[UIApplication sharedApplication] scheduleLocalNotification:localNotification];

        }

        else {
//            write else part
        }
        [localNotification release];
    }

}

當我遇到NSDate *date = [formatter dateFromString:birthday]; 此行,日期無法准確到達,因此我無法正確設置本地通知。 如果有什么不好的地方,請幫幫我。

NSDateFormatter的行為與您想象的不同。 如果您對它是否使用GMT,UTC,基於當前系統區域設置的時區感到困惑,請閱讀以下問題並回答: NSDateFormatter從字符串返回錯誤的日期

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM