[UIKit] Image Handling Snippet

  • Sử dụng Timer để tạo animation
  • Cập nhật hình ảnh thông qua index
  • Xử lý vòng lặp của animation

Khai báo ImageView outlet

// Khai báo ImageView outlet
@IBOutlet weak var imgGoodnight: UIImageView!

Cập nhật hình ảnh

// Cập nhật hình ảnh
func updateImage() {
    imgGoodnight.image = UIImage(named: "goodnight-images/goodnight\(imgIndex)")
}

Chuyển đổi qua hình ảnh tiếp theo

// Chuyển đổi qua hình ảnh tiếp theo
@IBAction func changeToNextImage(_ sender: UIButton) {
    if (imgIndex >= 37) {
        imgIndex = 1
    } else {
        imgIndex += 1
    }
    updateImage()
}

Animation với hình ảnh

// Animation với hình ảnh
func startAnimation() {
    startTimer()
    if (isSoundOn) {
        audioPlayer?.play()
    }
    updateImage()
}

func startTimer() {
    timer = Timer.scheduledTimer(timeInterval: 0.1, 
                               target: self, 
                               selector: #selector(self.changeToNextImage(_:)), 
                               userInfo: nil, 
                               repeats: true)
}