UILocalNotification - resetInterval reset (без повторов)

ios uilocalnotification

2351 просмотра

1 ответ

обзор

  • Я создаю уведомление на основе существующего экземпляра UILocalNotification
  • Существующий экземпляр имеет repeatIntervalзначениеNSWeekdayCalendarUnit

Что я хочу сделать

  • Я хочу, repeatIntervalчтобы не повторять,

Вопрос

  • Какую константу я должен установить, repeatIntervalчтобы она не повторялась?
Автор: user1046037 Источник Размещён: 12.11.2019 09:02

Ответы (1)


6 плюса

Решение

Взято из документации Apple:

Если вы назначите единицу календаря, например, еженедельную (NSWeekCalendarUnit) или годовую (NSYearCalendarUnit), система перенесет уведомление о доставке через указанный интервал. Значение по умолчанию 0, что означает, что не повторяться.

Я предполагаю, что вы хотите отменить уведомление с повторяющимся интервалом, вы можете сделать это двумя способами:

  1. Отмените все уведомления.
  2. Отмените только это уведомление.

Первый вариант прост, используйте:

cancelAllLocalNotifications

В вашем приложении делегат.

Второй требует больше работы. Вам нужно пройти через ожидающие уведомления (использовать scheduledLocalNotifications) и отменить уведомление.

Чтобы узнать, какие уведомления будут отменены, вы можете использовать это userInfoсвойство при установке уведомления. Например, установите уникальный идентификатор для каждого уведомления, чтобы при отмене этого уведомления вы просто сравнивали этот идентификатор со всеми идентификаторами в вашем scheduledLocalNotificationsмассиве.

Автор: Edu Размещён: 28.04.2012 03:49
Вопросы из категории :
32x32