は現在、私は私のswift
に文字列の配列を持っていると私はUILabel
にループ内でそれらを表示しています:Swiftの同じUILabelで異なるテキストをフェードインまたはフェードインする方法はありますか?
let greetings = ["Test1", "Test2", "Test3", "Test4"]
override func viewDidLoad(){
super.viewDidLoad()
Timer.scheduledTimer(timeInterval: 2.0, target: self, selector: #selector(TutorialEntryPoint.update), userInfo: nil, repeats: true)
}
var i = 0
func update() {
if(i==4){
i=0
}
myLabel.text = greetings[i]
i += 1
}
- それを修正する方法があります各テキストが消えたり、スムーズに表示されるようにしますか?私はanimateWithDuration
を使用し、alpha
を修正することを考えましたが、正しく行う方法がわかりません。
'i'をチェックする代わりに、' greetings [i%greetings.count] 'を使うこともできます。 –
@HennyLeeどういう意味ですか?申し訳ありません、ただ素早く学んでいます:) – user3766930
'greetings [i%greetings.count] 'を使うと、範囲外であることを心配することなく' i'を増やすことができます。 '100%greetings.count'はあなたのケースでは' 0'と同じです。これは '%'がモジュロであるからです。結果は、分割時の剰余になります。たとえば、「5%3 = 2」は、5を3で割ったときの剰余を意味します。 –