У меня есть несколько представлений внутри ViewController, и я хочу знать, когда на них нажимают, и я не уверен, как это сделать.
Обнаруживать, когда на просмотре нажимают
comment
Я предполагаю, что это iOS, однако термин нажатие подразумевает использование мыши. Пожалуйста, отредактируйте свои теги.
- person trojanfoe   schedule 24.06.2014
comment
В iOS все постукивают. Не на что нажимать.
- person Fogmeister   schedule 24.06.2014
comment
возможный дубликат Обнаружить, был ли затронут определенный UIView среди других UIViews а>
- person Hemang   schedule 24.06.2014
comment
Да, возможно, возникли проблемы с поиском ответа
- person Byte Me   schedule 24.06.2014
Ответы (1)
Чтобы проверить, был ли затронут определенный вид внутри другого представления, вы можете использовать hitTest.
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event;
В вашей пользовательской реализации touchBegan проверяйте каждое касание в наборе касаний. Балл за метод hitTest можно получить, используя
- (CGPoint)locationInView:(UIView *)view;
method, where the view is your superView (the one that contains other views).
РЕДАКТИРОВАТЬ: Вот быстрая индивидуальная реализация:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
CGPoint locationPoint = [[touches anyObject] locationInView:self];
UIView* viewYouWishToObtain = [self hitTest:locationPoint withEvent:event];
}
Надеюсь, это было полезно, Пол
Источники: Определить, был ли затронут определенный UIView среди других UIViews
person
StrawHara
schedule
24.06.2014