Отслеживание события касания без перезаписи методов отправки события в UIWindow и UIApplication
Я пытаюсь реализовать управление сеансом для нового модуля в существующую базу кода, в которой main.m
, Appdelegate
а также UIApplication
файлы объединены в библиотеку, и у нас нет доступа для их изменения.
Я попытался, добавив распознаватель жестов в UIWindow
метод для отслеживания событий касания, но обычные события касания кнопок работали неправильно.
Сейчас планирую подкласс UIView
и перезаписать штрихи начали и нажмите метод испытаний и сделать все мои UIView
класс реализует этот обычай UIView
учебный класс.
Есть ли у нас лучший подход для отслеживания сенсорных событий, кроме упомянутых выше подходов?
1 ответ
Наилучшим подходом будет перезапись отправки события UIApplication
а также UIWindow
но это не возможно в вашем случае.
Попробуй добавить UIGestureRecognizer
к вашему приложению поделился UIWindow
затем установите его делегат и реализуйте приведенный ниже метод делегата.
-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
{
return NO;
}
Возвращая NO
не позволит распознавателю жестов увидеть этот сенсорный объект. Вы можете добавить свою реализацию для отслеживания сенсорного события внутри этого метода.