[iPhone] CABasicAnimationを使たアニメーション

アニメーションは処理が重いのですがCABasicAnimationを使うと比較的スムーズな動きを出せます。こちらで画像のモザイクを試しましたが、それを動画にしてみましょう。
 

Swift 5.1
Xcode 11.3.1

 

CABasicAnimation

 
CALayer の CA は Core Animationのことでアニメーションの画像処理系の重い処理に適しています。またUIViewと被っているような気もするのですが、その差は
CALayer
‘An object that manages image-based content and allows you to perform animations on that content’

アニメーション的な処理はこちらが使いやすいということのようです

UIView
‘An object that manages the content for a rectangular area on the screen.’

描画する領域について色々定義しているということでしょうか

モザイク画からフェードインするような演出を作ります。 
rasterizationScale をキーにして CABasicAnimation のインスタンスを生成
duration でアニメーション期間を設定して、その間の開始と終了時のキー値を入れます。
imgView.layer に追加する
コードは以下のようになります。
 
ViewController.swift

 
あとは画像を選んでAssets.xcassetsに入れます。
(例:sample@2x.jpg)

ButtonをStoryboardに置いてコードと紐付けします。

Swiftのいつの頃からか、QuartzCore.framewarkを入れなくてもできるようになりましたね
 

 
画像のちょっとしたアレンジができそうです。
 
 
関連ページ:

References:
CABasicAnimation – Core Animation | Apple Developer Documentation
UIImageView – UIKit | Apple Developer Documentation
UIImage – UIKit | Apple Developer Documentation

一人でアプリ開発の限界を感じたら

アプリ開発を始めたけどわからないところがあり、誰かに聞きたいけど周りにはそんな人はいない…あるいは、会社で働いていて日中そんなに時間をとれないなど、オンライン・スクールがいいと思います。


TECH ACADEMY
自宅にいながら1時間でプログラミング基礎を習得

こういうものではアプリ作れないと言う意見もありますが、それは結局本人のやる気があるかないかです。やる気があっても独学では突破しにくいところは教えてもらうのが一番早い。


侍エンジニア塾
侍エンジニア塾 無料体験レッスン



とても簡単なことなのに本やネットの画像だけでは分かりにくいことはあります。実際に質問してピンポイントで教えてもらうと、なんだそんなこと、と言うのがけっこうあります。


CodeCamp
~約20,000名の受講生と300社以上の導入実績~
現役エンジニアのオンライン家庭教師CodeCamp




直接(ネットで)誰か分かる人に聞いた方が早く解決して、上達も早いと思います。


Play Ground
本業と並行してやるには月額制なのがありがたいです。


無料で転職まで
これはiOSアプリ限定ではありませんが無料です
その代わり就職することを前提にしたスクールで「エンジニアになって職を得たい」のであれば手っ取り早いかもしれません


誤字脱字、意味不明などのご意見は 謙: e-mail まで
ブックマークしておくと便利です このエントリーをはてなブックマークに追加
Twitter:


シェアする

  • このエントリーをはてなブックマークに追加

フォローする