iOS

[Swift3]で直感的にアニメーションが記述できるライブラリ「Cheetah」

投稿日:

はじめに

こんにちは、nukkyです。
今回は、仕事でViewのアニメーションを
多用する機会があったので
そこで使用したライブラリ「Cheetah」を紹介したいと思います。

準備

おなじみCarthageを使用します。

Cartfileにこちらを記述します、

そうしたら、以下のコマンドでビルドしてください。

実装

準備

まずは「Cheetah」をインポートします。

次にViewを表示します、
今回は動きが分かりやすいように正四角形で用意します。

移動

まずは単純に移動させてみます。
以下のコードで右方向に移動します。

連続で移動させたい場合は以下のようにします。

moveの後にmoveを実行したいときはwait()を挟んでください。

回転と拡大

回転と拡大は以下のように行います。

回転はrotate、拡大はscaleを使用します。
当然、移動とも絡めることができるので、
上の連続移動のサンプルに追記して、
右回転で右に移動しながら拡大し、
左回転で初期位置に縮小しながら戻るようにします。

速度調整

アニメーションの速度調整は以下のように行います。

durationでアニメーションの速度、
delayでアニメーションを実行するまでの遅延を指定できます。
この場合runから2秒後にアニメーションが開始され、
その後、0.5秒でアニメーションが終了するように実行されます。

繰り返し

アニメーションの繰り返しは回数指定と
永続指定の2種類用意されています。

注意事項として、repeatCountは最初の実行回数は含まれていないので
repeatCount(3)と指定するとアニメーションは4回実行されます。

アニメーションの終了

アニメーションの終了は以下の形で受け取ります。

ちなみにアニメーションの終了は繰り返し指定していても
一回のループが終わるたびに検知されるので気をつけてください。
(repeatCount(3)と指定した場合4回終了が検知されます)

 

さいごに

「Cheetah」いかがだったでしょうか、
まだまだ、今回紹介しきれなかった機能は一杯あるのですが
基本的な使い方は紹介出来たと思います。
かなり直感的かつ簡単にアニメーションが書けるので
アニメーションを多用するアプリには
是非、使ってみて頂ければと思います。

blog-page_footer_336




blog-page_footer_336




-iOS
-

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

swift

[Swift]ログフレームワーク「CocoaLumberjack」をSwiftで使ってみた

1 はじめに2 準備3 実装3.1 出力先の設定3.2 ログの出力レベルを設定する3.3 ログの出力4 さいごに はじめに こんにちは、nukkyです。 今回はログ管理に便利なライブラリ「CocoaL ...

swift

[Swift3] SwitchとEnumを使ってSectionやCellを指定する

1 はじめに1.1 環境2 Enumの用意3 Tableの用意4 Cellの返却にEnumを使用する5 さいごに はじめに どうも、はじめです。 今回はSectionやCellの指定にSwitchとE ...

iOSでFirebase Authenticationを実装してみる その1

1 はじめに2 Firebaseプロジェクトの設定3 新規ユーザー登録4 既存ユーザーのログイン5 匿名ログイン6 エラーメッセージ7 最後に8 おすすめ書籍 はじめに はじめまして、Yossyです。 ...

swift

UnboxとWrapでデータを永続化する

1 はじめに1.1 ライブラリの紹介1.2 前提条件2 事前準備3 実装3.1 データの準備3.2 設定データをテキストファイルに出力する3.3 設定データの読み込み4 さいごに はじめに 設定ファイ ...

swift

SnapKItをつかってコードでも簡単にAutoLayout実装

1 はじめに2 準備3 実装3.1 準備3.2 AutoLayoutを指定3.3 UIAlertControllerのカスタム4 さいごに はじめに こんにちは、nukkyです。 iOSの実装中にコー ...

フォロー

follow us in feedly

blog-page_side_responsive

2017年8月
 12345
6789101112
13141516171819
20212223242526
2728293031 

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。