В настоящее время у меня есть массив строк в моих swift
и я отображая их в петле на UILabel
:Как я могу исчезать и выходить из разных текстов на том же UILabel в Swift?
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», что означает, что 2 - остаток, когда вы делите 5 на 3. –