我创建了一个带有UIView的动画标签,当在标签栏中的视图控制器之间切换时,这是一个小故障。
我已经附上了GIF,分别是我的故事板布局。
警告:我意识到我的代码并不那么优雅,说得好听,但是有谁知道为什么会这样或者我怎么能
A)阻止这种情况发生?
和/或
B)解决它?
是我的代码(可能),模拟器中的错误(不太可能),还是我错误地接近动画?
我正在使用这个
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(true)
self.updateGSLabel(textArray: ["Game Mode", "Play"], index : 0)
}
func updateGSLabel(textArray : [String], index : Int){
UIView.animate(withDuration: 1.25, animations: {
self.gameModeLabel.alpha = 0.0
}) { (success) in
self.gameModeLabel.text = textArray[index]
UIView.animate(withDuration: 1.25, animations: {
self.gameModeLabel.alpha = 1.0
}) { (success) in
var newIndex = index
if(newIndex == textArray.count - 1) {
newIndex = -1
}
self.updateGSLabel(textArray: textArray, index : newIndex + 1)
}
}
}
修改
这可能与闭包参数有关,但我不知道。如果有人可以更好地阐述,那将是值得赞赏的。
我试图链接到一个关于它的页面,但显然我需要至少10个代表发布超过2个链接,我认为我已经这样做了所以我不知道这是怎么回事。