Как настроить повторные уведомления UILocal в списке выбора будних дней
Я реализовал UILocal Notification по следующей ссылке
http://useyourloaf.com/blog/2010/07/31/adding-local-notifications-with-ios-4.html
И я изменил его, чтобы установить уведомления повтора на каждый день с помощью
//To set the repeat notification
notif.repeatInterval = NSDayCalendarUnit;
Например, ex Каждый день в 10.00.
Но мое требование заключается в том, что пользователь должен установить уведомление на выбранные дни недели (с понедельника по субботу)
почему, потому что у пользователя могут быть еженедельные праздники, такие как (суббота и воскресенье) / пятница - воскресенье) / некоторые другие дни..
на week offs he shouldn't fire the notifications.
Поэтому мы желаем, чтобы пользователь установил выбранные рабочие дни, а уведомления будут устанавливаться только в эти дни... после того, как пользователь установит уведомления.
For ex:
у нас есть список дней недели, вс, понедельник, вторник, ср, чт, пт, суббота
на них пользователь выбирает понедельник, вторник, среду, четверг. и установить в 10 утра
Тогда уведомление будет срабатывать каждый день 10. утра этих дней.
Как это сделать
1 ответ
API для UILocalNotification очень ограничен в этом отношении - вам придется вручную планировать 4 события, повторяющихся еженедельно в дни, выбранные пользователем.
Пример планирования повторного таймера на понедельник будет выглядеть следующим образом
NSDateComponents *dateComponents = [[NSDateComponents alloc] init];
dateComponents.weekday = 2; // sunday = 1 ... saturday = 7
dateComponents.hour = 10;
UILocalNotification *notification = //...
notification.repeatInterval = NSWeekCalendarUnit;
notification.fireDate = [calendar dateFromComponents:dateComponents];
Номера дней могут быть найдены в Ссылке класса NSDateComponents