2017-04-13 39 views
1

首先我想說,我一直在尋找我的問題的答案相當多,但到目前爲止我發現的唯一的東西是老版本的Swift的答案或答案不具體回答我的問題。Xcode中的多個通知,Swift 3

背景信息:
我想開發一個應用程序,可以提醒你在一個設定的時間間隔。現在這個工作,因爲你只設置了1個提醒。但是,如果我將間隔設置爲20秒,則啓動應用程序,設置2個通知並關閉應用程序,僅在20秒內顯示第二個通知。第一個通知被第二個通知覆蓋。

問題:我怎樣才能確保我所有的通知,用戶請求的,實際上會發送,並且沒有通知覆蓋前一個?

爲通知

代碼:

let tijd = 20 //20 is just for the test, normally there is more code to it 

    // Notification 
    let content = UNMutableNotificationContent() 
    content.title = "Notification title"//title 
    content.body = "Notification body" //body 
    content.badge = 1 
    content.sound = UNNotificationSound.default() 

    // Timer 
    let trigger = UNTimeIntervalNotificationTrigger(timeInterval: TimeInterval(tijd), repeats: false) 
    let request = UNNotificationRequest(identifier: "timerDone", content: content, trigger: trigger) 

    UNUserNotificationCenter.current().add(request, withCompletionHandler: nil) 

此代碼被存儲在一個UITableView細胞。 My storyboard

+0

你是如何設置兩個通知?顯示該代碼。在提供的代碼中,只有一個通知被添加到中心。 –

+0

哦,對,那麼我認爲這可能是問題所在。我現在擁有的是:我點擊一個單元格,第二個VC使用爲每個單元格提供的代碼出現。我應該改變這一切嗎?如果是這樣,什麼? @RajanMaheshwari –

回答

0

好吧我想通了!
https://stackoverflow.com/a/41892828/7385440
這個答案導致我有同樣的問題。我必須使每個通知的標識符不同!所以我現在的代碼是:

let request = UNNotificationRequest(identifier: bezigheid, content: content, trigger: trigger) 

bezigheid是在每個單元格中不同的東西。測試它,現在我得到2個不同的通知!