[swift] PKHUD를 사용하여 두 개 이상의 메시지를 순차적으로 표시하는 방법은?
import PKHUD
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
showSequentialMessages()
}
func showSequentialMessages() {
let messages = ["첫 번째 메시지", "두 번째 메시지", "세 번째 메시지"]
showNextMessage(messages: messages)
}
func showNextMessage(messages: [String]) {
if let message = messages.first {
HUD.flash(.label(message), delay: 1.5) { _ in
DispatchQueue.main.async {
var updatedMessages = messages
updatedMessages.removeFirst()
self.showNextMessage(messages: updatedMessages)
}
}
}
}
}
위 예제는 PKHUD 라이브러리를 사용하여 순차적으로 여러 메시지를 표시하는 방법을 보여줍니다.
showSequentialMessages
메소드에서 표시할 메시지의 배열을 생성하고 showNextMessage
메소드를 호출합니다. showNextMessage
메소드는 주어진 메시지 배열에서 첫 번째 메시지를 가져와 PKHUD를 사용하여 표시한 다음, 1.5초 후에 다음 메시지를 표시하기 위해 showNextMessage
메소드를 재귀적으로 호출합니다.
이를 통해 여러 메시지가 순차적으로 표시되며, 이전 메시지가 사라진 후에 다음 메시지가 나타납니다.
참고문서:
- PKHUD 라이브러리: https://github.com/pkluz/PKHUD
- PKHUD 문서: https://cocoapods.org/pods/PKHUD