1

とにかく、iPhone でゲームを実行しているときに、ピンチ トゥ ズームをゲームで動作させることはできますか?

Stencylworks を使用してクラス プロジェクト用のゲームを作成しました。このゲームは iPad で完璧に動作し、iPhone でも動作しますが、シーンが拡大されてプレイするのが非常に難しくなっています。

ズームアウトするピンチ ジェスチャを実装する方法はありますか? XcodeでView Controllerを使用したり、どこかにコードを追加したりできるのでしょうか?? 私はXcodeを初めて使用するので、これを機能させる方法がまったくわかりません!

これが役立つかどうかはわかりませんが、プロジェクトのスクリーンショットをいくつか示します。

https://sites.google.com/site/boomblocksgld/pinch-to-zoom

>

#import <Box2D/Box2D.h>
#import <Foundation/Foundation.h>
#import <AudioToolbox/AudioServices.h> 
#import "SceneScript.h"

#import "Script.h"

#import "Actor.h"
#import "ActorType.h"
#import "Assets.h"
#import "Behavior.h"
#import "Game.h"
#import "GameModel.h"
#import "GroupDef.h"
#import "FadeInTransition.h"
#import "FadeOutTransition.h"
#import "Region.h"
#import "Runnable.h"
#import "Scene.h"
#import "SHThumbstick.h"
#import "Sparrow.h"
#import "Transition.h"
#import <Foundation/Foundation.h>
#import <CoreGraphics/CoreGraphics.h>
#import <UIKit/UIKitDefines.h>

@protocol UIGestureRecognizerDelegate;
@class UIView, UIEvent, UITouch;


@interface Design_353_353_PinchZoom : SceneScript 
{
  @public
      NSString* tempHolder;

}
@end

@implementation Design_353_353_PinchZoom


-(void)load
{

}

-(void)update
{  
}
// Gesture Reconizer Methods
-(void)checkpinch {    

UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizer     >alloc]initWithTarget:self action:@selector(checkpinch)];
[pinch setDelegate:self];
[pinch setDelaysTouchesBegan:YES];
[self.view addGestureRecognizer:pinch];
[pinch release];
}


-(void)render:(SPRenderSupport*)g x:(int)x y:(int)y
{
[super render:g x:x y:y];

}



-(void)forwardMessage:(NSString*)msg
{

}

@end
4

1 に答える 1

1

iOS 3.2 以降を使用している場合は、Viewdidload に次のコードを追加します。.h ファイルに UIGestureRecognizerDelegate を追加します。

//Gesture reconizer
UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizer alloc]initWithTarget:self action:@selector(checkpinch)];
[pinch setDelegate:self];
[pinch setDelaysTouchesBegan:YES];
[self.view addGestureRecognizer:pinch];
[pinch release];

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(checktap)];
[singleTap setDelegate:self];
singleTap.numberOfTapsRequired = 1;
singleTap.numberOfTouchesRequired =2;
[self.view addGestureRecognizer:singleTap];
[singleTap release];


UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(checktap)];
[doubleTap setDelegate:self];
doubleTap.numberOfTapsRequired = 2;
doubleTap.numberOfTouchesRequired =1;
[self.view addGestureRecognizer:doubleTap];
[doubleTap release];


// Gesture Reconizer Methods
-(void)checkpinch {    

    //write here code for your requirements
}

-(void)checktap {

    //write here code for your requirements
}

私はこれがあなたを助けることを願っています...寒さ

于 2012-04-16T04:04:51.100 に答える