我目前使用左右箭头在图像之间切换,但想添加功能,以便用户可以朝着改变图像的方向滑动。
设备如何检测左侧滑动或右侧滑动并将其用作IBAction或类似于按钮触发执行?
是否有内置方法或是否需要从头开始编码?
由于
答案 0 :(得分:4)
如果目标是3.2或更高,则可以使用UISwipeGestureRecognizer。把它放在你的UIImageView子类中:
- (void)viewDidLoad {
[super viewDidLoad];
UISwipeGestureRecognizer *recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(rightSwipeHandle:)];
[recognizer setNumberOfTouchesRequired:1];
[self addGestureRecognizer:recognizer];
[recognizer release];
}
- (void)rightSwipeHandle:(UISwipeGestureRecognizer*)gestureRecognizer {
//do something
}
如果你的目标是3.2或更低,你需要使用NSClassFromString& [[UIDevice currentDevice] systemVersion]确保当前设备具有所需的类。
答案 1 :(得分:1)
除了christo所说的,我仍然建议在“3.2之前”这样做 - 因为你将无法支持尚未更新到4.0的iPhone,所以因此每一款iPhone在那里。
旧方法是覆盖UIImageView子类中的touchesBegan / Moved / Ended。 This post是关于TableViews的,但完全相同的代码适用于UIView的每个子类,因此您可以在ImageView中使用它。