Iphone 掐;旋转:未调用UIgestureRecognitizerDelegate

Iphone 掐;旋转:未调用UIgestureRecognitizerDelegate,iphone,ios,sdk,uigesturerecognizer,Iphone,Ios,Sdk,Uigesturerecognizer,我试图在同一个视图中实现收缩和旋转。有时会调用挤压选择器,有时会调用旋转选择器,好吧,但随后它会继续使用。问题显然是,gestureRecognitor:(uigestureRecognitor*)gestureRecognitor应该与gestureRecognitor:(uigestureRecognitor*)其他gestureRecognitor同时识别。为什么不呢?一定是很明显的事情 @interface FaceView : UIView <UIGestureRecognize

我试图在同一个视图中实现收缩和旋转。有时会调用挤压选择器,有时会调用旋转选择器,好吧,但随后它会继续使用。问题显然是,
gestureRecognitor:(uigestureRecognitor*)gestureRecognitor应该与gestureRecognitor:(uigestureRecognitor*)其他gestureRecognitor
同时识别。为什么不呢?一定是很明显的事情

@interface FaceView : UIView <UIGestureRecognizerDelegate>
{
}
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer;
@end

@implementation FaceView
- (id)initWithFrame:(CGRect)frame
{
    if( self = [super initWithFrame:frame] )
    {
        self.multipleTouchEnabled = YES;
        self.userInteractionEnabled = YES;

        UIRotationGestureRecognizer* rotationRecognizer = [[UIRotationGestureRecognizer alloc] initWithTarget:self action:@selector(rotationGesture:)];
        [self addGestureRecognizer:rotationRecognizer];
        [rotationRecognizer release];

        UIPinchGestureRecognizer* pinchRecognizer = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(pinchGesture:)];
        [self addGestureRecognizer:pinchRecognizer];
        [pinchRecognizer release];
    }
    return self;
}

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
    NSLog(@"gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer");
    return YES;
}

- (void)rotationGesture:(UIRotationGestureRecognizer*)gesture
{
    switch( gesture.state )
    {
        case UIGestureRecognizerStateBegan:
            NSLog(@"rotationGesture began");
            break;

        case UIGestureRecognizerStateChanged:
            NSLog(@"rotationGesture changed");
            break;
    }
}

- (void)pinchGesture:(UIPinchGestureRecognizer*)gesture
{
    switch( gesture.state )
    {
        case UIGestureRecognizerStateBegan:
            NSLog(@"pinchGesture began");
            break;

        case UIGestureRecognizerStateChanged:
            NSLog(@"pinchGesture changed");
            break;
    }
}
....
@界面面视图:UIView
{
}
-(BOOL)手势识别器:(UIGestureRecognizer*)手势识别器应与手势识别器:(UIGestureRecognizer*)其他手势识别器同时识别;
@结束
@实现FaceView
-(id)initWithFrame:(CGRect)帧
{
if(self=[super initWithFrame:frame])
{
self.multipleTouchEnabled=是;
self.userInteractionEnabled=是;
UIRotationGestureRecognizer*rotationRecognizer=[[UIRotationGestureRecognizer alloc]initWithTarget:self action:@selector(Rotation手势:)];
[self-AddgestureRecognitor:RotationRecognitor];
[旋转识别器释放];
UIPinchGestureRecognizer*pinchRecognizer=[[UIPinchGestureRecognizer alloc]initWithTarget:self action:@selector(pinchGesture:)];
[self-AddgestureRecognitor:PinchreRecogniter];
[钳形释放];
}
回归自我;
}
-(BOOL)手势识别器:(UIGestureRecognizer*)手势识别器应与gestureRecognizer:(UIGestureRecognizer*)其他手势识别器同时识别
{
NSLog(@“手势识别器:应与手势识别器同时识别”);
返回YES;
}
-(无效)旋转手势:(ui旋转手势识别器*)手势
{
开关(手势状态)
{
案例UIgestureRecognitzerStateStart:
NSLog(“旋转手势开始”);
打破
案例UIgestureRecognitzerStateChanged:
NSLog(@“旋转姿势已更改”);
打破
}
}
-(无效)pinchGesture:(UIPinchGestureRecognitor*)手势
{
开关(手势状态)
{
案例UIgestureRecognitzerStateStart:
NSLog(@“pinchGesture开始”);
打破
案例UIgestureRecognitzerStateChanged:
NSLog(@“pinchGesture变更”);
打破
}
}
....

我必须设置
rotationRecognizer.delegate=self
pinchRecognizer.delegate=self