##やりたいこと
for文でイメージを変える
##for文とは
制御文で繰り返し処理の際に使う。
##for文の書式
for 定数名 in 範囲 { //処理 }
・範囲の部分の"開始の数字"と"終了の数字"の間に"."を3つつける。
例)1〜5 → 1...5
・範囲が1〜4だったら、"1..<5"と書くこともできる。
(書式は色々あるけど下記のコードで使う書式のみ書かせていただきました。)
##準備すること
イメージを3つ準備する
名前をそれぞれ0,1,2とする。
##コード
@IBOutlet weak var imageView: UIImageView!
@IBOutlet weak var startButton: UIButton!
@IBOutlet weak var stopButton: UIButton!
var timer = Timer()
var count = Int()
var imageArray = [UIImage]()
override func viewDidLoad() {
super.viewDidLoad()
count = 0
//stopButtonを有効化
stopButton.isEnabled = true
//for文でイメージを変えてる。
for i in 0..<3{
print(i)
let image = UIImage(named: "\(i)")
imageArray.append(image!)}
//最初のイメージを設定
imageView.image = UIImage(named:"0")}
func startTimer(){
timer = Timer.scheduledTimer(timeInterval: 0.1,target: self,selector: #selector(timerUpdate), userInfo: nil, repeats: true)
}
@objc func timerUpdate(){
count = count + 1
if count > 2 {
count = 0
}
imageView.image = imageArray[count]
}
@IBAction func start(_ sender: Any) {
//startButtonを無効化
startButton.isEnabled = false
//stopButtonを有効化
stopButton.isEnabled = true
//上のstartTimerのメソッドを呼び出す
startTimer()
}
@IBAction func stop(_ sender: Any) {
//startButtonを有効化
startButton.isEnabled = true
//stopButtonを無効化
stopButton.isEnabled = false
//timer止める
timer.invalidate()
}
}
##シミュレーター
#Swift pic.twitter.com/26o8tvzOCR
— aa2302 (@aa23021) July 9, 2020