swift - 动画注释更改

问题描述 投票:0回答:1

我有一个带有多个注释的mapView,其上显示了自定义图像。使用func mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView?

如果选择或取消选择注释,目前有此代码可以更改图像的大小:

func mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView) {

    view.frame = CGRect(x: (view.annotation?.coordinate.longitude)!, y: (view.annotation?.coordinate.latitude)!, width: 50, height: 50)

}


func mapView(_ mapView: MKMapView, didDeselect view: MKAnnotationView) {
   //code to return it to normal annotation size

    view.frame = CGRect(x: (view.annotation?.coordinate.latitude)!, y: (view.annotation?.coordinate.longitude)!, width: 30, height: 30)

}

这样可以正常工作,但我希望为更改设置动画,因为它看起来会更好。当我添加这样的动画代码时:

UIView.animate(withDuration: 0.5, animations: {
        view.frame = CGRect(x: (view.annotation?.coordinate.longitude)!, y: (view.annotation?.coordinate.latitude)!, width: 30, height: 30)
})

动画具有从屏幕外对角滑动的注释幻灯片。我试过切换x:和y:或者只是将它们设置为0但似乎都不起作用。

你有什么建议吗?

ios swift mapkit mkannotationview
1个回答
1
投票

添加代码我最终用于其他有类似问题的人。感谢qazxsw poi和qazxsw poi

Mannopson
© www.soinside.com 2019 - 2024. All rights reserved.