Ios 设置动画时无法点击注释

Ios 设置动画时无法点击注释,ios,objective-c,swift,mapkit,Ios,Objective C,Swift,Mapkit,我有我的自定义注释。我不时为其设置动画: UIView.animateWithDuration(duration, delay: 0, options: .CurveLinear, animations: { customAnnotation.coordinate = newCoordinate 当这种情况发生时,我不能点击它来调用mapView:didSelectAnnotationView 我甚至添加了UIButton作为子视图: let

我有我的自定义注释。我不时为其设置动画:

 UIView.animateWithDuration(duration, delay: 0, options: .CurveLinear, animations: {
                        customAnnotation.coordinate = newCoordinate
当这种情况发生时,我不能点击它来调用mapView:didSelectAnnotationView

我甚至添加了UIButton作为子视图:

let button = UIButton(frame: CGRect(x: 7.25, y: 17, width: 37, height: 15))
    let text = customAnnotation.displayedName
    button.setTitle(text, forState: .Normal)
    button.backgroundColor = UIColor.blackColor()
    button.setTitleColor(UIColor.greenColor(), forState: .Normal)
    button.addTarget(self, action: "buttonTapped:", forControlEvents: .TouchUpInside)
    customAnnotationView?.addSubview(button)
在mapView中:viewForAnnotation,但它也不起作用。
有什么想法吗?

下面的用法可能适合您

 View.animateWithDuration(duration, delay: 0, options: .CurveLinear | .AllowUserInteraction , animations: {
                            customAnnotation.coordinate = newCoordinate
})

options
中可以传递到的另一个
uiviewmanimationoptions
参数是.AllowUserInteraction

public static var AllowUserInteraction: UIViewAnimationOptions { get } // turn on user interaction while animating
要将多个参数传递给
选项
,可以在数组中传递它们,如下所示:

UIView.animateWithDuration(duration, delay: 0, options: [.CurveLinear, .AllowUserInteraction], animations: {
                    customAnnotation.coordinate = newCoordinate
希望这对你有帮助