• UILocalNotification实现本地的闹钟提醒的方法。


    http://www.devdiv.com/thread-69786-1-1.html

    UILocalNotification *notification=[[UILocalNotification alloc] init];
            if (notification!=nil) 
            {
                
                NSDate *now=[NSDate new];
               
                //notification.fireDate=[now addTimeInterval:period];
                notification.fireDate = [now dateByAddingTimeInterval:period];
                NSLog(@"%d",period);
                notification.timeZone=[NSTimeZone defaultTimeZone];
                notification.soundName = @"ping.caf";
                //notification.alertBody=@"TIME!";
                
                notification.alertBody = [NSString stringWithFormat:@"@%时间到了!",nameStr];
                
                NSDictionary* info = [NSDictionary dictionaryWithObject:uniqueCodeStr forKey:CODE];
                notification.userInfo = info;
                
                [[UIApplication sharedApplication] scheduleLocalNotification:notification];      
                
            } 

    设置的时间到了以后,会自动在桌面弹出一个提示框,点显示后,就可以启动软件。然后在
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
        UILocalNotification *localNotif = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey];
        if (localNotif) 
        {
            NSLog(@"Recieved Notification %@",localNotif);
            NSDictionary* infoDic = localNotif.userInfo;
            NSLog(@"userInfo description=%@",[infoDic description]);
            NSString* codeStr = [infoDic objectForKey:CODE];
        }
    }里,对lanchOptions进行处理,找到它里面的信息,就可以拿到设置时的需要处理的东西,就可以继续操作了。

    如果此时你的客户端 软件仍在打开,则会调用
    - (void)application:(UIApplication *)app didReceiveLocalNotification:(UILocalNotification *)notif
    {

    }
    一样的处理方法。


    在程序中取消已经设定的通知的方法了:
    NSString *myIDToCancel = @"some_id_to_cancel"; 
    UILocalNotification *notificationToCancel=nil; 
    for(UILocalNotification *aNotif in [[UIApplication sharedApplication] scheduledLocalNotifications]) 
    {   
    if([aNotif.userInfo objectForKey:@"ID"] isEqualToString:myIDToCancel]) 
    {      
    notificationToCancel=aNotif;    
      break;   


    [[UIApplication sharedApplication] cancelLocalNotification:notificationToCancel];

  • 相关阅读:
    [kuangbin带你飞]专题七 线段树
    [kuangbin带你飞]专题六 最小生成树
    [kuangbin带你飞]专题五 并查集
    [kuangbin带你飞]专题四 最短路练习
    [kuangbin带你飞]专题三 Dancing Links
    [kuangbin带你飞]专题二 搜索进阶
    [kuangbin带你飞]专题一 简单搜索
    常用算法模板
    ACM程序设计选修课——Problem E:(ds:图)公路村村通(Prim)
    HDU——5667Sequence(矩阵快速幂+费马小定理应用)
  • 原文地址:https://www.cnblogs.com/ligun123/p/2252882.html
Copyright © 2020-2023  润新知