2015-04-04 85 views
1

我正在尝试创建一个应用程序,它将本地通知作为警报提供,而不是横幅。但看起来像横幅是默认的,我无法找到一种方法来改变我的代码。我可以在应用程序通知设置中更改它,并且它可以很好地工作,但我希望该配置为默认设置。如何在iOS8中将通知类型从Banner更改为Alert?

这是代码,我用它来询问用户是否允许发送通知:(?顺便说一句,没有人知道我为什么不能设置图标徽章使用此代码)

UIUserNotificationSettings* notificationSettings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound categories:nil]; 
[[UIApplication sharedApplication] registerUserNotificationSettings:notificationSettings]; 

,这是我用它来创建本地通知代码:

UILocalNotification* localNotification = [[UILocalNotification alloc] init]; 
     localNotification.fireDate = [NSDate dateWithTimeIntervalSinceNow:segundosTotal]; 
     localNotification.alertBody = timer.nome; 
     localNotification.soundName = @"Default-28-sec-192kbps.mp3"; 
     localNotification.timeZone = [NSTimeZone defaultTimeZone]; 
     [[UIApplication sharedApplication] scheduleLocalNotification:localNotification]; 

有了这个代码,我得到默认的横幅通知,我怎样才能改变这种状况到警报吗?

回答

3

我不相信有什么办法可以以编程方式强制系统将通知显示为警报而不是横幅。查看documentation for UILocalNotificationUIUserNotificationSettings,我没有看到任何可以让您指定需要警报而不是横幅的内容。

用户可以根据自己的应用调整通知设置 - 我会让他们决定如何接收通知。