Как сделать UIScrollView прямыми прикосновениями к подвиду подкласса UIView? - PullRequest
0 голосов
/ 31 декабря 2011

У меня есть UIScrollView, который я использую в качестве контейнера для двух «страниц» представлений.Первая страница содержит два подпредставления: своего рода подкласс UIView «холста», который пользователь может рисовать прикосновениями, и подкласс UIView «панели управления», полный UIControls.В самом представлении прокрутки прокрутка отключена (я использую UIPageControl для его прокрутки.)

Проблема заключается в следующем: когда я нажимаю на любой из элементов управления в представлении панели управления, они работают нормально.Однако, когда я касаюсь вида холста, ничего не происходит.В подпредставлении Canvas нет элементов управления;это просто пустой подкласс UIView, который обнаруживает прикосновения и рисует точки под пальцем пользователя.(Раньше все это работало нормально; недавно я поместил эти две части в представление прокрутки.)

Как я могу сказать UIScrollView пересылать касания в подпредставление canvas?Я настроил режим прокрутки таким образом, чтобы задержки касаний контента и отмены касаний контента были отключены.Взаимодействие с пользователем и Multiple Touch включены.

Я не знаю, следует ли разделить UIScrollView на подклассы и изменить его обработку касанием или переопределить какой-либо другой метод в подклассе UIView холста.

РЕДАКТИРОВАТЬ: Винс (комментатор) побудил меня посмотреть, где живут обработчики сенсорных событий.Они существуют в подклассе UIViewController, которому принадлежит представление панели управления и представление холста (а теперь и представление прокрутки). touchesBegan больше не вызывается.

Спасибо

1 Ответ

0 голосов
/ 31 декабря 2011

Вы используете iOS 5? Если это так, попробуйте использовать UIViewController Контейнерные API. Если у вас есть ViewController с UIScrollView и «дочерним» контроллером представления под ним, вы можете связать проблемы. Попробуйте вызвать [self addChildViewController:theCanvasVC] в вашем контроллере для scrollView.

Я догадываюсь о твоей архитектуре, чтобы я мог уйти. Дайте мне знать, как организовано ваше приложение.

Вы можете прочитать о Контроллерах Контейнерного представления здесь . Прокрутите вниз до «Реализация контроллера представления контейнера».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...