在过去的几个小时里,我一直在尝试延迟地在Xcode中更改图像。我已经尝试使用以下代码来实现这一点:
UIImageView.animate(withDuration: 1, delay: 2, options: [], animations: {
self.TapTap_intro.image = UIImage(named: "Second TapTap")
}, completion: nil)}使用此代码时的问题是,它似乎没有考虑延迟并立即更改图像。
有人能告诉我我做错了什么吗?我怎么才能解决这个问题?
发布于 2018-03-15 02:13:13
要在没有动画的情况下进行更改,不需要使用UIView.animate,您可以在一段延迟后进行调度
DispatchQueue.main.asyncAfter(deadline: .now() + 2 ) {
self.TapTap_intro.image = UIImage(named: "Second TapTap")
}发布于 2018-03-15 02:13:24
DispatchQueue.main.asyncAfter(deadline: .now() + delay) {
// Do your thing
}发布于 2018-03-15 02:11:15
使用计时器而不是动画:
let timer = Timer.scheduledTimer(timeInterval: 1.0, target: self, selector: #selector(changeImage), userInfo: nil, repeats: false)并创建一个函数来更改图像:
func changeImage() {
self.TapTap_intro.image = UIImage(named: "Second TapTap")
}https://stackoverflow.com/questions/49284827
复制相似问题