2012-01-09 4 views
0

私はどうすればcocos2d-iphoneのinit関数でタッチ位置を取得できますか?

-(id) init{ } 

の座標を触れる必要がありますが、私はそれをどのように行うことができます

-(BOOL) ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event{ 

    CGPoint touchLocation = [touch locationInView: [touch view]]; 
    touchLocation = [[CCDirector sharedDirector] convertToGL:touchLocation]; 

    touchLocation = [self convertToNodeSpace:touchLocation]; 

    return YES; 
} 
でそれらを得ることができますか?

答えて

0

ccTouchBeganは「ランダム」と呼ばれます。つまり、あなたのプログラムは、ユーザがいつスクリーンに触れるかを知らない。これは非同期イベントと呼ばれます。私はあなたがCCTouchDispatcher

+0

ありがとうを使用して行うための方法を見つけることができない限り、私は、initは呼び出されたときに、画面上に既にあるタッチを取得する方法を考えることはできません

)これ。今私はこの関数からinit.xにlocation.xと.yを送る必要があります – SaxOpilatov

+0

あなたの問題は、あなたのinitが完了するまでその関数が呼び出されないということです。直前のシーンからタッチ位置を渡す方法や、タッチ情報に直接アクセスする方法を見つけなければならないので、 'ccTouchBegan:'を使用することはできません。代わりに 'CCTouchDispatcher'を見てください。 –

+0

私はそれをCCTouchDispatcherとして書き換えます – SaxOpilatov

関連する問題