У меня есть UILabel в моем приложении, в котором отображаются сообщения чата. Эти сообщения чата жестко закодированы как массив строк. Мне нужно отображать эти сообщения по одному на UILabel, но мне нужно иметь определенную 2-секундную задержку между переключением сообщений, поскольку пользователю необходимо прочитать каждое сообщение.Отображение текстов один за другим в том же UILabel
Что я реализовали это следующий код:
for chatText in chatDialogue{
dispatch_async(dispatch_get_main_queue(), {
chatLabel.text=chatText as? String
})
println(chatText)
NSThread .sleepForTimeInterval(2)
}
здесь мы имеем массив chatDialogues
["Hello","How are you?","Can you say DIAS","Wait Please"]
Теперь мне нужно это будет отображаться на том же лейбле, но с задержкой скажем между изменением сообщений.
Приведенная выше реализация при выполнении показала только последнее сообщение в цикле.
бы не 'NSThread .sleepForTimeInterval (2)' блок основной поток поэтому интерфейс не может быть обновлен, чтобы вы не видите изменения на ярлыке? Может быть, вызывать 'layoutIfNeeded' после установки текста. Не знаю, хотя, просто догадываясь. – Artrmz