有谁可以告诉我为什么这会在重新出现时显示旧按钮标题?
func showSuccess(success:Bool) {
if success == true {
self.stage = 2 //needed to determine what method is triggered on button action
UIView.animateWithDuration(0.4, delay: 0.0, options: .CurveEaseOut, animations: {
self.oldView.alpha = 0
}, completion: { finished in
self.textLabel.text = "new text new text new text"
self.actionButton.setTitle("BAR", forState: .Normal)
self.reappearView(self)
})
}
}
func reappearView(sender:AnyObject) {
self.oldView.layoutIfNeeded()
UIView.animateWithDuration(0.4, delay: 0.0, options: .CurveEaseOut, animations: {
self.oldView.alpha = 1
}, completion: { finished in
})
}
由于某些奇怪的原因,标签字段上的文本更改可以正常工作。该按钮将使用旧标题生成动画,然后在重新显示动画期间 - 切换到showSuccess()的完成处理程序中的新标题集。
我还尝试将所有文本更改作为reappearView()的第一部分移动,然后触发第二个动画,结果相同。