2012-03-30 73 views
0

我已經讀了很多關於UILocalNotifications線程和教程,我感到困惑的「關閉」按鈕。例如,這個鏈接到很多:HERE困惑「關閉」在UILocalNotification

當我每5秒鐘使用UILocalNotification設置(作爲一個測試),然後點擊'關閉'按鈕時,通知停止。我讀過的所有內容都說不應該發生。他們都表示,通知將繼續,直到用戶打開應用程序並執行某些操作(無論您需要它們做什麼)。

(我想要的行爲是一個通知,直到應用程序被打開,我似乎無法得到它)

這是怎麼回事? 這是否和iOS版本特定的行爲?

+0

你一定是錯了。這是**不可能**安排每5秒重複一次的'UILocalNotification'。它可以重複每個** 1 **秒,或每分鐘,或每小時,或每天或每週等等。但**不**每5秒。 – yuji 2012-03-30 15:31:01

+0

@yuji是的,我想我誤解了通知的工作原理。我的印象是「開創」是一個時間間隔,而不是一個單一的點。我現在已經看到其他帖子,基本上說你必須創建多個計算在NScalendar常量範圍內的通知。謝謝。 – wayneh 2012-03-30 15:43:20

回答

1

你可以安排多達64個本地通知。 沒有理由不使用NSTimeInterval來每5秒鐘安排一次通知。 但是,您需要確保的是應用程序會在應用程序打開後立即取消所有本地通知。否則,您計劃的其他通知仍然會啓動。

在你上面的語句,我想你理解錯了關閉動作。這不像鬧鐘上的貪睡按鈕。即使被解僱,本地通知也只會觸發一次。

圍繞它的唯一辦法是正如我上面提到安排多個similiar,通知,或向ADDA重複間隔。重複時間間隔不可定製,但可能不適合您的需求。

+0

是的,我想我誤解了通知的工作原理。我的印象是「開創」是一個時間間隔,而不是一個單一的點。我現在已經看到其他帖子,基本上說你必須創建多個計算在NScalendar常量範圍內的通知。謝謝。 – wayneh 2012-03-30 15:43:37

+0

很高興幫助。我的一個開源項目中的一些代碼可能用於調度。 https://github.com/Burnsoft/Settings-Swipe – 2012-03-30 15:46:36

1

您無法安排通知到每五秒鐘重複。上UILocalNotificationrepeatIntervalNSCalendarUnit類型,它必須是列出here的值中的一個的,並且不存在「單元」五秒鐘。

由於NSCalendarUnit被typedef定義到NSUInteger,分配一個整數repeatInterval的時候,你不會得到一個編譯器錯誤,但你不會看到預期的結果(因爲你正在經歷)。