我在用戶按下徽標後正在運行動畫。 這是動畫:Swift:查看MessageController後iOS動畫停止(iOS的消息頁面)
func rightRotateView(targetView: UIView, duration: Double = 5) {
UIView.animate(withDuration: duration, delay: 0.0, options: [.repeat, .curveLinear] , animations: {
targetView.transform = targetView.transform.rotated(by: CGFloat.pi * 5)
}) { finished in
// self.rightRotateView(targetView: targetView)
}
}
長按的3秒鐘之後(在這一次的動畫應該仍然運行),我提出了用戶的消息控制器:
if MFMessageComposeViewController.canSendText() == true {
print(self.urgentNumber)
let recipients:[String] = ["\(self.urgentNumber as! String)"]
self.messageController.messageComposeDelegate = self as? MFMessageComposeViewControllerDelegate
self.messageController.recipients = recipients
self.messageController.body = "Hey,\nmy longitude: \(self.userLocation.coordinate.longitude) \nmy latitude: \(self.userLocation.coordinate.latitude)"
self.present(self.messageController, animated: true, completion: nil)
} else {
//handle text messaging not available
}
當我按消息控制中的取消按鈕,我將返回動畫頁面,但動畫停止工作。 我試過本後重新運行動畫,並在
func messageComposeViewController(_ controller: MFMessageComposeViewController, didFinishWith result: MessageComposeResult) {
}
但沒有奏效。
我試過了,看到動畫剛剛重新啓動,當我添加這個實現。如果動畫處於中間位置,它將重新啓動,產生波濤洶涌的效果。有沒有辦法解決? – ArielSD