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

[Swift4]UITextViewにプレースホルダをつける

1 はじめに1.1 前提条件2 実装3 さいごに はじめに こんにちは、nukkyです。 UITextFieldにはプレースホルダが標準で用意されていますが、UITextViewには用意されていません ...

swift

[iOS]意外と簡単ウィジェット機能を実装してみる

1 はじめに2 OSごとのできること3 ウィジェットの実装3.1 Today Extensionの追加3.2 Chartを表示3.3 表示を増やす3.4 ウィジェットをタップした際にアプリを起動する4 ...

swift

[Swift]動画広告を最後まで見たら何かするアレをAPPLOVINでやってみた

1 はじめに1.1 前提条件2 準備3 実装3.1 Xcodeの設定3.2 広告の再生4 テスト設定とかアプリ管理5 さいごに はじめに こんにちは、nukkyです。 今回はタイトルの通り、アプリでよ ...

swift

[Swift]CSVを読み込みRealmに保存してみる

1 はじめに1.1 前提条件2 準備3 実装4 さいごに はじめに こんにちは、nukkyです。 今回はDBにプリセットなどを用意する際にCSVを使ってRealmで保存して見たいと思います。 前提条件 ...

【iOS14】App Groups を使用して WidgetKit にデータ共有

1 はじめに2 App Groupsの準備2.1 App Groupsの許可2.2 App Groupsの使い方3 WidgetKitにデータ共有4 さいごに5 おすすめ書籍 はじめに 今回はアプリ側 ...

フォロー

blog-page_side_responsive

2017年8月
 12345
6789101112
13141516171819
20212223242526
2728293031  

アプリ情報

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