Иногда такие прерывания, как телефонный звонок, нарушают нормальное поведение приложения на iPhone или iPad.
Например, я создал один экземпляр UIScrollView и реализовал методы делегата UIScrollView: scrollViewWillBeginDragging и scrollViewDidEndDragging (и scrollViewDidEndDecelerating).
Метод scrollViewWillBeginDragging деактивировал все пользовательские кнопки в моем приложении.
Затем методы scrollViewDidEndDragging и scrollViewDidEndDecelerating активировали эти пользовательские кнопки. То есть, пока пользователь прокручивал, все пользовательские кнопки на некоторое время отключались.
Проблема была в том, что пока пользователь
начал тянуть и просто держал
Экземпляр UIScrollView, если я взял
снимок экрана нажатием кнопки домой
и кнопку питания, то любой из
scrollViewDidEndDragging и
scrollViewDidEndDecelerating не
позвонить. Так что приложение запуталось
до.
Я реализовал метод UIApplicationWillResignActiveNotification в моем UIViewController, но он не вызывался после создания снимка экрана.
Как я могу поймать любое прерывание, которое нарушает регулярный поток событий?
Иногда touch_End и touchCanceled не вызывались из-за прерывания.
Спасибо.