我尝试使用以下代码为我的视图设置动画:
UIView.animate(withDuration: 1) {
fooView.isHidden = false
}
问题是视图的最终位置几乎位于屏幕的底部,目前动画正从屏幕顶部显示并向下移动。
我不喜欢它从底部出现,我该如何控制它?感谢
答案 0 :(得分:2)
isHidden
UIView
属性不可动画。
您需要做的是在动画开始之前将isHidden设置为false并将alpha设置为0,并将alpha属性设置为非零值。这将导致视图在动画期间淡入。
如果isHidden
在动画期间为真,则视图将在整个持续时间内隐藏。
答案 1 :(得分:1)
您似乎想要在视图到达其最终位置时取消隐藏视图,以便您可以使用完成动画块:
UIView.animate(withDuration: 1, animations: {
//Animation
}, completion: { (finished) in
if finished {
fooView.isHidden = false
}
})
此外,如果你想用动画执行隐藏取消隐藏,你可以使用它
fooView.alpha = 0.0
UIView.animate(withDuration: 1, animations: {
fooView.alpha = 1.0
}, completion: { (finished) in
if finished {
}
})