Анимация встряхивания для UIAlertView в swfit

Я знаю, что для Objective-C есть несколько похожих вопросов. Кто-нибудь знает, как сделать это в Swift? Ниже мой alertView функция.

func alertError(errorString: String?){

    let alertController = UIAlertController(title: "Error Detected", message:
        errorString, preferredStyle: UIAlertControllerStyle.Alert)
    alertController.addAction(UIAlertAction(title: "Dismiss", style: UIAlertActionStyle.Default,
        handler: nil))

    self.presentViewController(alertController, animated: true, completion: nil)

}

1 ответ

Глядя на эту ветку и конвертируя код в принятый ответ, вот что я получил:

var dialog: UIAlertView = UIAlertView(title: "Title", message: "Message:", delegate: self, cancelButtonTitle: "Cancel", otherButtonTitles: "Done", nil)
dialog.alertViewStyle = UIAlertViewStylePlainTextInput
dialog.show()
var dillusionView: UIView = UIView(frame: CGRectMake(0, 0, view.frame.size.width, view.frame.size.height))
dillusionView.backgroundColor = UIColor.blackColor()
view.addSubview(dillusionView)

UIView(duration: 1.0, delay: 0.0, options: UIViewKeyframeAnimationOptionAutoreverse | UIViewKeyframeAnimationOptionRepeat, animations: {    UIView(relativeStartTime: 0.0, relativeDuration: 0.5, animations: { dialog.window.transform = CGAffineTransformTranslate(dialog.transform, dialog.frame.origin.x - 10, dialog.frame.origin.y)

})
    UIView(relativeStartTime: 0.5, relativeDuration: 0.5, animations: { dialog.window.transform = CGAffineTransformTranslate(dialog.transform, dialog.frame.origin.x + 10, dialog.frame.origin.y)

    })

}, completion: nil)

В качестве предупреждения могут быть некоторые ошибки в этом коде. Надеюсь, поможет!

Другие вопросы по тегам