2013-03-17 2 views
0

Итак, у меня есть цикл, который создает на экране множество кусочков квадратов, используя массив, и я добавил распознаватель жестов, чтобы обнаружить кастрюлю. Дело в том, что я хочу, чтобы плавно скользить по одному объекту к другому, не поднимая пальца. Но, с моим текущим кодом, я должен поднять палец и проскочить по каждому объекту индивидуально. Кто-нибудь знает, как сделать так, чтобы я мог плавно скользить пальцем по каждому объекту и выполнять их функции, когда они были перевернуты? Вот мой код:Обнаружить панорамирование нескольких объектов?

int numby = [squareLocations count]; 

    for (int i = 0; i < numby; i++) 
    { 
     NSValue *pointLocation = [squareLocations objectAtIndex:i]; 
     CGPoint tmpPoint = [pointLocation CGPointValue]; 
     UIImage *theSquare = [UIImage imageNamed:@"square.png"]; 

     UIButton *squareButton = [[UIButton alloc] init]; 

     squareButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
     squareButton.frame = CGRectMake(tmpPoint.x, tmpPoint.y, theSquare.size.width, theSquare.size.height); 
     squareButton.tag = *(&i); 
     [squareButton setImage:theSquare forState:UIControlStateNormal]; 

     UIPanGestureRecognizer *slide = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePan:)]; 
     [squareButton addGestureRecognizer:slide]; 

     [whereStuffActuallyHappens addSubview:squareButton]; 

    } 

} 

- (void) handlePan:(UIPanGestureRecognizer *)slide { 


    [slide setTranslation:CGPointZero inView:slide.view]; 

    NSInteger tag = slide.view.tag; 
    NSLog(@"Tag is: %i", tag); 

    [slide.view removeFromSuperview]; 
} 

ответ

0

любопытных взломать иш способа сделать это было бы добавить панорамирование жеста в надтаблицы ваших квадратов вместо, и проверить, какой из них имеет место жеста сталкивающийся с рамой.

+0

Есть ли способ проверить метки квадратов с помощью touchhesBegin? Я думал, могу ли я проверить теги квадратов, используя это, я мог бы сделать это именно так? –

+0

Мне никогда не удавалось прикоснуться к Begin, чтобы работать, поэтому я могу ошибаться, но я не думаю, что он будет вызван, если палец все еще находится на экране и просто просматривает представление. – Jsdodgers

+0

Что делать, если я наполнил распознаватель кастрюль в touchhesbegin? –

Смежные вопросы