您的位置:首页 > 产品设计 > UI/UE

本地通知UILocalNotification

2014-03-18 17:45 274 查看
//发送通知

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

if (notification!=nil) {

NSDate *now=[NSDate new];

notification.fireDate=[now dateByAddingTimeInterval:10];//10秒后通知

notification.repeatInterval=kCFCalendarUnitMinute;//循环次数,kCFCalendarUnitWeekday一周一次

notification.timeZone=[NSTimeZone defaultTimeZone];

notification.applicationIconBadgeNumber=1; //应用的红色数字

notification.soundName= UILocalNotificationDefaultSoundName;//声音,可以换成alarm.soundName = @"myMusic.caf"

//去掉下面2行就不会弹出提示框

notification.alertBody=@"通知内容";//提示信息 弹出提示框

notification.alertAction = @"打开"; //提示框按钮

//notification.hasAction = NO; //是否显示额外的按钮,为no时alertAction消失

// NSDictionary *infoDict = [NSDictionary dictionaryWithObject:@"someValue" forKey:@"someKey"];

//notification.userInfo = infoDict; //添加额外的信息

[[UIApplication sharedApplication] scheduleLocalNotification:notification];

}

[notification release];

取消通知

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

// Override point for customization after application launch.

application.applicationIconBadgeNumber = 0;

// Add the view controller's view to the window and display.

[window addSubview:viewController.view];

[window makeKeyAndVisible];

return YES;

}

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

//点击提示框的打开

application.applicationIconBadgeNumber = 0;

}

- (void)applicationDidBecomeActive:(UIApplication *)application {

//当程序还在后天运行

application.applicationIconBadgeNumber = 0;

}

在消息推送的时候会右提示筐 点击进入程序首先时调用了这个的方法。

- (void)application:(UIApplication *)app didReceiveLocalNotification:(UILocalNotification
*)notif {

//点击消息推送时候会调用这个方法。。

// Handle the notificaton when the app is running

NSLog(@"Recieved Notification %@",notif);

UIAlertView *alert = [[[UIAlertViewalloc]
initWithTitle:nilmessage:[notif
alertBody]delegate:selfcancelButtonTitle:nilotherButtonTitles:@"good",nil]
autorelease];
[alertshow];

if(notif.applicationIconBadgeNumber){

app.applicationIconBadgeNumber=notif.applicationIconBadgeNumber-1;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: