0
我想向我的代碼添加一個通知,以便當按下按鈕時,用戶被保存到數據庫,並彈出一個通知,說用戶已成功保存到數據庫。我檢查了我的代碼,但它仍然無法工作。沒有錯誤出現,但沒有任何通知。我試圖在屏幕頂部創建一個小橫幅,標題爲「客戶保存到數據庫」。Xcode中的通知沒有出現
這是我的代碼;如果你能發現任何錯誤或建議如何解決它,我會非常感激!
使用Xcode 8.2.1。和目標C
在AppDelegate.m:
-(void)application:(UIApplication *)application didRegisterUserNotificationSettings:(nonnull UIUserNotificationSettings *)notificationSettings{}
在NewCustomerViewController.m
:
@interface NewCustomerViewController(){NSUserDefaults *defaults;}
在viewDidLoad中
:
defaults = [NSUserDefaults standardUserDefaults];
UIUserNotificationType types = UIUserNotificationTypeBadge| UIUserNotificationTypeSound| UIUserNotificationTypeAlert;
UIUserNotificationSettings *mySettings = [UIUserNotificationSettings settingsForTypes:types categories:nil];[[UIApplication sharedApplication] registerUserNotificationSettings:mySettings];
終於,在我IBAction爲爲節省客戶的按鈕:
[defaults setBool:YES forKey:@"notificationIsActive"];
[defaults synchronize];
UILocalNotification* localNotification = [[UILocalNotification alloc] init];
localNotification.fireDate = 0;
//Enter the time here in seconds.
localNotification.alertBody= @"Customer Saved to Database";
localNotification.timeZone = [NSTimeZone defaultTimeZone];
//localNotification.repeatInterval= NSCalendarUnitDay;//NSCalendarUnitMinute; //Repeating instructions here.
localNotification.soundName= UILocalNotificationDefaultSoundName;
[[UIApplication sharedApplication] scheduleLocalNotification:localNotification];
再次感謝!
您使用的是哪個iOS版本?你的應用是開放的,並在前臺? –
我的iOS部署目標是8.0,這是你的意思嗎?我在桌面上的模擬器中打開了該應用程序 –
如果您的應用程序處於前臺(除非您使用您製作的UIView來模擬它),否則無法顯示本地通知,除非您的目標iOS 10.0。有沒有任何理由針對iOS 8.0?只有大約5%左右的用戶使用iOS 8. – Gruntcakes