如何在Swift 3中执行简单的完成块?
我想在完成动画时设置self.isOpen = true
:
UIView.animate(withDuration: 0.25, delay: 0.0, options: [], animations: {
self.isOpen = true
self.drawerView?.frame = CGRect(x: 0, y: 0, width: (self.drawerView?.frame.size.width)!, height: (self.drawerView?.frame.size.height)!)
self.contentView?.frame = CGRect(x: 200, y: 0, width: (self.contentView?.frame.size.width)!, height: (self.contentView?.frame.size.height)!)
}, completion: nil)
顺便说一下:
由于互联网上没有任何东西,学习Swift 3 atm是不可能的:(
我还搜索了整个文档,甚至提到了“animate”这个词,却找不到任何东西:
答案 0 :(得分:84)
你可以这样添加:
UIView.animate(withDuration: 0.25, delay: 0.0, options: [], animations: {
self.drawerView?.frame = CGRect(x: 0, y: 0, width: (self.drawerView?.frame.size.width)!, height: (self.drawerView?.frame.size.height)!)
self.contentView?.frame = CGRect(x: 200, y: 0, width: (self.contentView?.frame.size.width)!, height: (self.contentView?.frame.size.height)!)
}, completion: { (finished: Bool) in
self.isOpen = true
})