0

所以我正在编写一个应用程序,其中我有一个自定义 UIView,其中包含一个 UIScrollView,其中包含一系列 UIImageViews。我想这样做,以便当我触摸 UIScrollView 中的一个 UIImageViews 时,会发生一个事件(现在,假设我打印一个 NSLog() 或其他东西)。

我知道存在这个功能:

 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

但我不完全确定如何使用它。哪个 UIView 应该实现这个功能?我会在哪里准确地称呼它?还是在触摸某物时自动调用它?如何找到正确的 UIImageView?

4

2 回答 2

0

而不是使用touchesBegin:UIImageView 的子类,将 Tap 手势添加到这个新类并使用这个类而不是你在 scrollView 上使用的 ImageViews。

于 2013-10-31T18:49:05.137 回答
0

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event已经由 UIView 实现(实际上由 UIResponder 超类实现,默认情况下它什么都不做)。这个方法可以让你在子类中重写来做你想做的任何事情。

每当在视图边界内开始触摸时,确实会自动调用此方法。

在您的情况下,使用带有图像的 UIButton 可能会更好。

于 2013-10-31T18:30:25.370 回答