我正在尝试为视图设置动画,这意味着需要将视图高度缓慢地增加到从底部到特定的高度。我尝试了一些动画,但是它是从底部到顶部进行动画处理。我不需要。如果有人帮助我做到这一点将是很棒的。预先感谢。
extension UIView{
func animShow(){
UIView.animate(withDuration: 2, delay: 0, options: [.curveEaseIn],
animations: {
self.center.y -= self.bounds.height
self.layoutIfNeeded()
}, completion: nil)
self.isHidden = false
}
func animHide(){
UIView.animate(withDuration: 2, delay: 0, options: [.curveLinear],
animations: {
self.center.y += self.bounds.height
self.layoutIfNeeded()
}, completion: {(_ completed: Bool) -> Void in
self.isHidden = true
})
}
}
答案 0 :(得分:0)
您的extension
函数可以正常工作。在viewDidLoad
中,设置动画视图的框架,如下例所示:
viewToAnimate.frame = CGRect(x: 0, y: view.bounds.height, width: 100, height: 300)
并在您的viewDidAppear
中触发动画:
viewTotAnimate.animShow()
这应该从底部到顶部为您提供理想的动画。