Анимация встряхивания для 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)

}

person Sanky    schedule 07.11.2015    source источник
comment
можете ли вы сказать мне, когда вы хотите анимировать оповещение ??   -  person sohan vanani    schedule 04.01.2016


Ответы (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)

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

person Caleb Kleveter    schedule 18.11.2015