シェイクジェスチャーで画像を変更する

Blog

 

今回は、iPhoneをシェイクして画像を変更していく方法を紹介します。

 

画像を追加

 

  1. 画像の追加方法はこちらを参照してください。

 

 

UI

  1. ImageViewを追加する。
  2. Content Modeを「Aspect Fit」に変更。

 

 

 

 

コネクト

  1. ImageViewをOutlet接続。Name:「imageView」。

 

 

 

 

コーディング

 

  1. ViewController.swiftにコードを追加。

 

    let images = [ "1", "2", "3", "4" ]     //追加
    var currentImage = 0                    //追加
    //ここから
    
    override func motionEnded(_ motion: UIEventSubtype, with event: UIEvent?) {
        if event?.subtype == UIEventSubtype.motionShake {
            print("shaked")
            imageView.image = UIImage(named: images[currentImage] + ".jpg")
            
            if (currentImage == images.count-1) {
                currentImage = 0
            }
            else {
                currentImage += 1
            }
        }
    }
    
    //ここまで追加

 

 

全コード

 

import UIKit

class ViewController: UIViewController {
    
    let images = [ "1", "2", "3", "4" ]     //追加
    var currentImage = 0                    //追加
    
    @IBOutlet weak var imageView: UIImageView!
    
    
    //ここから
    
    override func motionEnded(_ motion: UIEventSubtype, with event: UIEvent?) {
        if event?.subtype == UIEventSubtype.motionShake {
            print("shaked")
            imageView.image = UIImage(named: images[currentImage] + ".jpg")
            
            if (currentImage == images.count-1) {
                currentImage = 0
            }
            else {
                currentImage += 1
            }
        }
    }
    
    //ここまで追加
    

    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
  
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        
    }
}

 

 

実行結果

 

 

シェイクは「control」+「command」+「Z」でシェイクできます。

 

以上で「シェイクジェスチャーで画像を変更する」の説明を終わります。

 

 

🤗

 

コメント