こんにちは、私は 3 つの別々のシーンを必要とする iPhone アプリケーションを設計しています。1 つは上部に、もう 1 つは中央 (メイン) に、もう 1 つは下部にあり、ユーザーの操作に応じて非表示および非表示になります。
スワイプ ジェスチャで中央 (メイン) のシーンを変更し、上部/下部のシーンを変更しない必要があるため、これは必須です。
これどうやってするの?
PS:
いくつかの質問/解決策を見てきましたが、簡単な答えはありません。よろしければ、本当の助けが必要です。
こんにちは、私は 3 つの別々のシーンを必要とする iPhone アプリケーションを設計しています。1 つは上部に、もう 1 つは中央 (メイン) に、もう 1 つは下部にあり、ユーザーの操作に応じて非表示および非表示になります。
スワイプ ジェスチャで中央 (メイン) のシーンを変更し、上部/下部のシーンを変更しない必要があるため、これは必須です。
これどうやってするの?
PS:
いくつかの質問/解決策を見てきましたが、簡単な答えはありません。よろしければ、本当の助けが必要です。
私が考えることができる最も簡単な方法は、同じ画面に3つのレイヤーを作成し、それらを好きなように配置することです
レイヤーを作成するのは簡単です。
サイズを変更するには を使用し[ <layer> setContentSize:...]
、位置を変更するには:<layer>.position=....
タッチされたレイヤーを検出するには:
- (BOOL)ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event
{
CGPoint location = [self convertTouchToNodeSpace: touch];
if (CGRectContainsPoint(<layer1>.boundingBox, location))
{
CCLog(@"touched 1st layer");
return YES;
}
if (CGRectContainsPoint(<layer2>.boundingBox, location))
{
CCLog(@"touched 2nd layer");
return YES;
}
return NO;
}
また... 3番目のレイヤーの場合CCMoveTo
は、レイヤーを画面上または画面外に移動するために使用します
それを試してみてください。それがあなたに役立つはずです。
-(void) registerWithTouchDispatcher
{
[[CCTouchDispatcher sharedDispatcher] addTargetedDelegate:self priority:0 swallowsTouches:YES];
}