2012-04-18 1 views
0

Вот моя текущая ситуация: Я создал CCScene с именем StoreScene. В этой сцене я инициализировал CCLayer и только что назвал его Store-слоем.Создание scrollview

Теперь я хочу прокручиваемый слой, содержащий контент, который пользователь может коснуться. Для этого я создал еще один CCLayer с именем Store Container. Создаю экземпляр этого слоя и добавьте его в качестве дочернего элемента в StoreScene.

В StoreContainer я добавил несколько спрайтов, каждый из которых имеет уникальный тег. Прокрутка выполняется в StoreScene, и прикосновения перемещают весь слой Storecontainer вверх или вниз.

Я добавил 4 спрайтов в мою прокрутке слой (магазин контейнер) Первоначально спрайтов 1 расположен на 0,10 Sprite 2 находятся в 0,20 спрайту 3 расположен в 0,30 спрайту- находится на 0,40

Очевидно, что при сдвиге всего слоя хранилища, положение спрайта сдвигается также. Однако, , когда я делаю это в методе TouchesEnded: if (CGRectContainsPoint (sprite1.boundingBox, touchpoint)) { NSLog (@ "TouchedSprite1"); } ... и т. Д. Для каждого спрайта

Прикосновение мест каждого спрата остается на том же месте !!! Визуально, спрайты движутся вверх и вниз красиво. , но их местоположения при прикосновении остаются постоянными .. есть ли причина для этого? Любые другие способы приближения к прокручиваемому слою? Я уже просмотрел прокрутку UIKit и посмотрел на CCScrollLayer, и оба они недостаточно хороши для меня. Мой способ может быть проще, но он не работает так, как планировалось. Спасибо заранее!^_^

+0

укажите, пожалуйста, код –

ответ

0

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

В качестве альтернативы вы можете сохранить текущую настройку и использовать свой ответ на this question, чтобы получить координаты касания в мире ... :)