2013-09-30 2 views
0

У меня есть UIView над моей CCScene в моем cocos2d с box2d. У меня есть эта проблема, UIView проглатывает все касания, а методы ccTouchesBegin и CCLayer не вызываются.Как передать штрихи от UIView к CCLayer (ccTouchesBegin и т. Д.)

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

Кто-нибудь знает? Вся помощь будет принята с благодарностью, спасибо заранее

ответ

0

Спасибо за советы, я попробовал ваш код @doctorBroctor, но это не сработало. Но я, наконец, сделал это через делегацию. Просто закодированные методы делегирования из UIView в мой слой.

+0

как вы его решили? вы могли бы показать какой-то код? – OMGPOP

+0

Я больше не использую Cocos2D, но я написал протокол делегирования и сделал слой делегатом UIView, поэтому в основном, когда я касался UIView, я вызывал методы делегирования (и причиной того, что слой был делегатом, он ответил вместо UIView) – Skiny

1

В функции инициализации вашего слоя, попробуйте добавить этот код:

[[[CCDirector sharedDirector] touchDispatcher] addTargetedDelegate:self priority:0 swallowsTouches:NO];

Если это не работает, вот две ссылки, которые могут помочь вам , Первый вопрос - вопрос StackOverflow, который кажется somewhat similar to yours. Другой вопрос форума Cocos2D о ком-то, у которого есть opposite problem as you, но, глядя на их код, и ответы на их вопрос могут дать вам еще несколько вещей, чтобы попробовать.

Удачи вам, помощник!