2013-03-31 56 views
1

我有兩個cclayers。頂層cclayer有幾個對象(從ccnode派生),並啓用了多點觸控。我使用cctouches開始檢測這些對象的觸摸。一切正常。2堆疊多重觸摸啓用CCLayers

但低於頂層cclayer我想有另一個多點觸控cclayer。所以每當一個物體沒有碰到頂層cclayer時,我想讓底層cclayer對這個接觸做出反應。底層cclayer基本上只是一個堅實的背景,我希望它在觸摸時發生反應。現在兩個cclayers都同時對觸摸做出反應。

我知道,單觸即可輕鬆解決touchdispatcher並設置優先級。但是我卡住了,因爲這兩個cclayers都啓用了多點觸控很重要。

有沒有解決方法?

+0

是多點觸摸頂層的'必須'嗎?即你想要檢測和跟蹤頂層包含的多個對象的同時觸摸的可能性? – YvesLeBorg

回答

1

多重觸摸:僅在頂層啓用觸摸輸入。如果頂層確定觸摸沒有在其中一個圖層的精靈上開始,它只會在底層調用相同的ccTouchesBegan方法。對於所有特定觸摸的所有後續事件(移動,結束)都是相同的。

單觸:從ccTouchBegan返回YES,只要圖層處理觸摸,另一圖層不應該處理該觸摸。

+1

ccTouchesBegan是一個(void)返回方法。這是我相信這個問題的癥結所在,我找不到任何方法來「聲稱」任何一個觸動。如果頂層是針對性的(而不是標準),那麼您的建議適用。 – YvesLeBorg

+0

哦對了,那麼我會更新我的答案;) – LearnCocos2D

+0

@YvesLeBorg使用touchDispatcher for(Bool)ccTouchBegan –