Создание UIView накладки, чтобы захватить все штрихи и жесты


0

у меня есть иерархия представления, включает в себя верхний уровне UIView с вложенной UIScrollView, который содержит многочисленные вложенные UIViews содержащих UILabels, UITextFields и т.д.

Я хотел бы наложить UIView поверх всех, чтобы я мог перехватить определенные события касания и перетаскивания (в основном для редактирования общей компоновки).

Я бы хотел, чтобы UIScrollView по-прежнему работал, поэтому мне нужно передать (все?) Касания и жесты через оверлей к подклассам. Когда происходят определенные прикосновения, я перехвачу прикосновение и создаю ситуацию перетаскивания, когда затронутое подвью будет программно перемещено внутри подзонов.

Каков наилучший способ создания наложения UIView так, чтобы (все?) Касания и жесты могли быть пройдены? Некоторые примеры кода были бы чрезвычайно оценены.

Большое спасибо.

0

В конце концов, я пересмотрел свою структуру таким образом наложения обрабатываются все с помощью жестов панорамирования


0

Подкласс наложение UIView и переопределить touchesBegan, прикасается .. методы, как это:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    // Do your stuff 
    [[[self view] nextResponder] touchesBegan:touches withEvent:event]; 
} 

Сделайте то же самое для touchesMoved, touchesEnded и touchesCancelled.

Не 100% уверен, что это будет работать, дайте ему идти :)

  0

Это не работает. Я считаю, что он передает прикосновение к «базовому» или «корневому» UIView, минуя все UIViews, сидящие на вершине базы. Вероятно, это связано с тем, что наложение фактически является прямым подходом к базе, а не ко всем другим представлениям, находящимся между ними. 23 май. 122012-05-23 13:41:36