iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了iphone – 如何在多个按钮上添加手势识别器?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

嗨,我正在尝试为’UIButton’添加手势识别器.当我这样做时: UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@SELEctor(handleSingleTap:)]; [self.LeftBottomSpaceBtn addGestureRecogn
嗨,我正在尝试为’UIButton’添加手势识别器.当我这样做时:

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@SELEctor(handleSingleTap:)];
[self.LeftBottomSpaceBtn addGestureRecognizer:singleTap];
[singleTap requireGestureRecognizerToFail:doubleTap];
[singleTap release];

它工作正常,但当我尝试将此手势添加到多个按钮时,它不起作用:

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@SELEctor(handleSingleTap:)];
[self.LeftBottomSpaceBtn addGestureRecognizer:singleTap];
[self.LeftUpSpaceBtn addGestureRecognizer:singleTap];
[self.RightBUpSpaceBtn addGestureRecognizer:singleTap];
[self.LeftReturnBtn addGestureRecognizer:singleTap];
[self.RightReturnBtn addGestureRecognizer:singleTap];
[self.deleteBtn addGestureRecognizer:singleTap];
[self.CapsBtn addGestureRecognizer:singleTap];
[singleTap requireGestureRecognizerToFail:doubleTap];
[singleTap release];

那么我怎么能像添加’longPress’和’doubleTap’一样将相同的手势添加到多个按钮?

解决方法

我建议如下:

NSMutableSet *buttons = [[NSMutableSet alloc] init];

[buttons addObject: self.LeftBottomSpaceBtn];
[buttons addObject: self.LeftUpSpaceBtn];
[buttons addObject: self.RightBUpSpaceBtn];
[buttons addObject: self.LeftReturnBtn];
[buttons addObject: self.RightReturnBtn];
[buttons addObject: self.deleteBtn];
[buttons addObject: self.CapsBtn];

for(UIButton *button in buttons)
{
    UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@SELEctor(handleSingleTap:)];
    [button addGestureRecognizer:singleTap];
    [singleTap requireGestureRecognizerToFail:doubleTap];
    [singleTap release];
}

如果将集合保存为变量,您也可以为所有按钮执行其他操作,例如释放所有按钮并更改所有BACkgroundColors,而无需单独调用它们.

您可能还需要为每个按钮制作单独的双重识别器.

大佬总结

以上是大佬教程为你收集整理的iphone – 如何在多个按钮上添加手势识别器?全部内容,希望文章能够帮你解决iphone – 如何在多个按钮上添加手势识别器?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。