2014-10-16 37 views
2

我有一个UIScrollView,有三个部分可以滑动到。每个部分都有一个UIButton,用户应该选择其中一个按钮。我的问题是,如果用户滑过UIButton,它会被意外选中。我的问题是,我应该将UIControlEvent设置为UIButtons,以便它们不会误认为滑动触摸了吗?滑动手势被误认为触地了

这里是我的按钮的代码:

var button1 = UIButton(frame: CGRectMake((bigSizes.width * (50/960)), (bigSizes.height * 20/568), (bigSizes.width * 220/960), (bigSizes.height * 300/568))) 
    button1.setImage(image1, forState: UIControlState.Normal) 
    view1.addSubview(button1) 
    button1.addTarget(self, action: "button1Pressed", forControlEvents: UIControlEvents.TouchUpInside) 

回答

2

您可以绕过这个按钮的问题,如果你改用UIImageView与敲击手势识别:

var button1 = UIImageView(frame: CGRectMake((bigSizes.width * (50/960)), (bigSizes.height * 20/568), (bigSizes.width * 220/960), (bigSizes.height * 300/568))) 
button1.image = image1 
button1.userInteractionEnabled = true 
view1.addSubview(button1) 
let tap = UITapGestureRecognizer(target: self, action: "handleTap:") 
button.addGestureRecognizer(tap) 

着,显然是handleTap:方法:

func handleTap(gesture: UITapGestureRecognizer) { 
    // handle tap 
}