2010-09-01 7 views
1

У меня есть четыре viewcontroller в моем UIwindow.i хотите поменять вид viewview view view view viewView в четыре раза через UItouch в UIWindow? Можно ли обрабатывать touchmoved в файле appdelegate.m, чтобы изменить происхождение фрейма этих viewcontrollers?Как найти контакт с UIwindow?

ответ

1

UIWindow - это родительский класс UIControl (который принимает события касания), поэтому он не может обрабатывать события касания. Вы должны поместить один главный VC в качестве подсмотра в UIWindow, а затем использовать этот VC для обмена последующими VC и представлениями.

+2

Я не согласен с вашим подходом, используя один вид контроллер для управления областями, но оправдание неверно. * * Возможно зафиксировать штрихи в подклассе 'UIWindow'. 'UIWindow' наследует от' UIView', а не 'UIControl'. 'UIView' происходит от' UIResponder'. Другими словами, если вы действительно хотите, вы * можете * подклассифицировать UIWindow и захватывать события пользовательского интерфейса перед тем, как они будут перенаправлены на ваш просмотр. – Justin

0

Вы можете добавить UIGestureRecognizer (UIPanGestureRecognizer среди них), чтобы любого вида обрабатывать действия от любого другого объекта с помощью жестов-х:

- (id)initWithTarget:(id)target action:(SEL)action;