[iPhone] ImageView アニメーション (Objective-C)

UIImageView は画像を扱うクラスですが、簡単にパラパラ漫画的なアニメーションもできます。

UIImageView animation

Objective-C
Xcode 9.4

UIImageView でぱらぱらアニメ

本格的なアニメーションは別のAPIを使うほうがいいのですが、手軽に簡単にやりたい場合はUIImageViewの機能を使うこともできます。

ぱらぱらアニメの手順

一枚一枚の画像を一定間隔で表示させてパラパラ漫画的に動画のように見えるようにする方法です。手順としてはUIImageのArrayを作り、それに画像を一つづつ割り当てます。

  1. アニメーション用の UIImage を複数用意
  2. UIImage の配列を NSArray で作る
  3. UIImageView のインスタンス生成
  4. view に追加する
  5. 画像の配列をアニメーションにセット
  6. 1枚あたりの時間間隔を設定
  7. 繰り返し回数をセット


UIImageViewのインスタンスを生成して、animationImagesメソッドを使ってUIImage のNSArrayを設定していきます。

サンプルコード

このアニメーションを起動するためのボタンをストーリーボードで設定して、背景色を変更します。


ViewController.m

storyboardの設定

@2xのRetina対応にした画像 cat_1@2x.jpg, cat_2@2x.jpg,…
これらを Assets.xcassets に入れます。



storyboardにボタンを置き、 背景色など適当に入れてボタンアクションの
start(sender: AnyObject)
と「Touch up Inside」で紐付けします。

サンプル動画

ボタンをタップするとパラパラ漫画となりました。

尚、Swift のケースはこちらです

Reference:
animationImages — UIImageView | Apple Developer Documentation