У меня есть UIViewController, который обнаруживает сенсорные события с touchesBegan
. Есть движущиеся объекты UIImageView, которые плавают по экрану, и мне нужно посмотреть, произошло ли событие касания на одном из них. Что я пытаюсь:
UITouch* touch = [touches anyObject];
if ([arrayOfUIImageViewsOnScreen containsObject: [touch view]]) {
NSLog(@"UIImageView Touched!");
}
Но этого никогда не происходит. Также, если бы я сделал что-то вроде этого:
int h = [touch view].bounds.size.height;
NSLog([NSString stringWithFormat: @"%d", h]);
выводит высоту всего UIViewController (экрана) каждый раз, даже если я касаюсь одного из UIImageViews, поэтому ясно, что [touch view]
не дает мне UIImageView. Как определить, когда нажата только UIImageView? Пожалуйста, не предлагайте использовать кнопки UIB.
Спасибо!