2013-05-15 2 views
0

В моем приложении у меня есть несколько небольших представлений, соединенных вместе, чтобы сформировать большой холст. Я правильно получаю прикосновение к началу/перемещению/завершению событий для каждого из этих представлений отдельно. Теперь я хочу, чтобы, если я касаюсь view1 и вытаскиваю палец из вида1 и на территорию view2, не поднимая палец вверх, я хочу, чтобы view2 каким-то образом получил уведомление о том, что я сейчас в этом представлении, т.е. view2 , Благодарю.Получить текущий вид из палец салфетки в iOS SDK

+1

Возможно, вам лучше использовать 'UISwipeGestureRecognizer' на представлении, содержащем меньшие виды. По мере того, как вы обрабатываете события салфетки на увеличенном представлении, вы можете отправлять сообщения связанным меньшим представлениям. – rmaddy

+0

спасибо за направление. позвольте мне попробовать. – iAmd

ответ

1

Я был в состоянии сделать это с помощью touchhesMoved метода. Вот код:

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
[super touchesMoved:touches withEvent:event]; 
CGPoint nowPoint = [touches.anyObject locationInView:self.view]; 
NSLog(@"%f, %f", nowPoint.x, nowPoint.y); 

NSArray *viewsToCheck = [self.view subviews]; 
for (UIView *v in viewsToCheck) 
{ 
    if ([v isKindOfClass:[CharacterTile class]]) 
    { 
     if (CGRectContainsPoint(v.frame, nowPoint)) 
     { 
      CharacterTile *ctTemp = (CharacterTile *)v; 
      //perform your work with the subview. 
     } 
    } 
} 
} 

где CharacterTile являются подвиды, добавленные на self.view. CGRectContainsPoint указывает, находится ли точка, затронутая пользователем, внутри представления или нет.

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