0
我使用Xcode和Cocos2d版本3.0。用TouchMoved拖動精靈
我想拖動屏幕上的精靈。我已經成功地使用了以下代碼:
(void) touchMoved:(UITouch *)touch withEvent:(UIEvent *)event
{
CGPoint touchLocation = [touch locationInNode:self];
sprite1.position=touchLocation;
sprite2.position=touchLocation;
sprite3.position=touchLocation;
sprite4.position=touchLocation;
}
但是,有時候精靈會在一秒鐘後停止移動。這不是一個滯後,因爲他們從來沒有跟上我的運動。他們停止!如果我放開並再次開始移動我的觸摸,精靈再次開始移動正常/有時再次執行「凍結」。
這是內存問題嗎?
好吧,我確定它一定是記憶。我將這些代碼複製到了一個幾乎沒有任何精靈的簡單遊戲中,並且完美運行。
也許觸摸離開[self boundingBox],在這種情況下,您將停止接收touchmoved事件。 – YvesLeBorg 2014-09-25 17:03:59
感謝您的回覆伊夫。我認爲'自我'是指整個屏幕。當然,我的手指不會離開屏幕。也許我應該改變'自我'到別的東西? – SunnyDay1203 2014-09-25 17:15:24
我不玩飛鏢:)如果你「知道」自己的邊框是全屏,那麼你是對的,我沒有進一步的解釋提供。運氣 – YvesLeBorg 2014-09-25 17:24:16