我的目標是讓label0
動態更改文本爲label1
更改透明度。 這裏爲i用於label1
的動畫的代碼的一部分:Xcode Swift動畫透明度錯誤
UIView.animateWithDuration(2.0, animations: {() -> Void in
self.label1.alpha = 0.0
//this is what happens after "tIme"
dispatch_after(tIme1, dispatch_get_main_queue()) {
UIView.animateWithDuration(2.0, animations: {() -> Void in
self.label1.alpha = 1.0
})
dispatch_after(tIme20, dispatch_get_main_queue()) {
UIView.animateWithDuration(5.0, animations: {() -> Void in
self.label1.alpha = 0.0
})
}
}
})
它基本上它從透明開始,1S之後淡入完全可見的,並且後20s它返回到是透明的。 這部分代碼WORKS^
不工作是應該使label0
變化的一個部分時間:
if(label1.alpha == 0.0) {
self.label0.text = "transparent"
}
else {
self.label0.text = "visible"
}
什麼,我想這是做的是非常自我解釋。如果label1
是透明的,則使label0
說「透明」或者說「可見」。問題是,即使label1
可見,它仍然會說「透明」。
我該如何解決這個問題?
如果您需要任何澄清,請不要猶豫,問。
編輯:我不可能改變動畫,因爲我需要做的是在ViewDidLoad和ViewDidAppear上的其他文本上顯示一些文本。我可以很容易地,但由於其不同的文本,我第一次打開應用程序將重疊。所以我需要做的是等待第一個文本消失,然後檢查它是否看不見。如果是,在ViewDidAppear上,我可以顯示我的第二個文本。
當你想到它是'0.0'什麼是label1.alpha'的'實際價值? –
你是什麼意思?我最初設置label1.aplha爲0.0,當它的0.0我不能在畫布上看到它 – ChubbyChocolate
可以顯示更多關於'if(label1.alpha == 0.0){ self.label0.text =「transparent」 } else { self.label0.text =「visible」 }'?你把它放在哪裏? – anhtu