0

[[UIApplication sharedApplication] scheduleLocalNotifications] を使用して、スケジュールされたすべての通知のリストを取得しました。

今、私はすべてのファイアデートの配列を今日の日付と比較し、今日の期限を通知するアラートビューを提供したいと考えています。私はこのようにしましたが、うまくいくかどうかはわかりません。iPhoneの開発は初めてなので、私を修正してください。

NSArray *arrayoflocalnotifications = [[NSArray alloc] initWithArray:[[UIApplication sharedApplication]scheduledLocalNotifications]];

for (UILocalNotification *localnotif in arrayoflocalnotifications)
{
     NSLog(@"array of firedate is %@", localnotif);

    if ([localnotif.fireDate isEqualToDate:[NSDate date]])
    {
        NSLog(@"Got a duetoday reminder...");

        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"AlertView" message:@"Due reminder for today" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Ok", nil];
        [alert show];
        [alert release];
    }

}
4

1 に答える 1

0

2 つの異なる日付を比較するには、compare: 関数を使用します。次のように使用します。

if(localnotif.fireDate compare:[NSDate date] == NSOrderedSame){
 // perform your operation here
}

compare:日付をNSOrderedAscending/NSOrderedDescendingと比較することで、日付が特定の日付より前か後かを柔軟に比較できます。

于 2012-10-31T11:34:56.617 に答える