К сожалению, создание объекта UILocalNotification
предоставляет возможность повторяться только в одном календарном блоке. Например, у вас может быть уведомление, которое повторяется каждый час, или каждый день, или каждый будний день и т. Д. Нет способа без особых усилий создать уведомление, которое повторяется каждый вторник и четверг.
При этом: вы можете предоставить каждому UILocalNotification
пользовательский NSDictionary
, назначенный свойству userInfo объекта. На вашем месте я бы создал пользовательскую структуру, содержащую немного больше информации об уведомлении, и сохранил бы ее в словаре. Если вы хотите, чтобы это было просто, это мог быть просто класс, содержащий 7 логических значений, по одному на каждый день недели.
В качестве примера вы можете создать UILocalNotification
, который повторяется ежедневно, с вышеуказанной структурой, чьи логические значения для вторника и четверга - ДА, а для всех остальных дней - НЕТ.
Когда срабатывает локальное уведомление, и вы отвечаете на него методом:
-(void)application:(UIApplication *)application didReceiveLocationNotification:(UILocationNotification *)notification
Вы можете извлечь этот словарь userInfo из уведомления, более внимательно посмотреть на основной повтор и проигнорировать уведомление, если логическое значение для текущего дня NO
.