At 2019/03/18 Otemachi.apk
アニメーションはこちらで見れます https://docs.google.com/presentation/d/1BRDNhsLdE0HKMxbAhMtGKF9gFC99DuiBDD981Wg8KfI/edit?usp=sharing
初めて自作ViewのAARライブラリを公開した話Yu Mitsuhori@1013Youmeee2019/03/18Otemachi.apk
View Slide
アジェンダ1. 自己紹介2. 発表の目的3. 作ったもの(Clipper)紹介4. Tips5. まとめ
自己紹介- 三堀 裕(youmitsu, youmeee)<-悩み中- Twitter: @1013Youmeee- Github: youmitsu- 新宿の隣でヘルスケア系のAndroidアプリを開発
発表の目的- 作ったライブラリの紹介- ライブラリを実装する上で得られた知見の情報共有
AAR?Androidのアプリモジュールの依存関係として使用できるライブラリのことJARとは違い、AndroidManifestやリソースファイルをライブラリ内に含めることができるhttps://developer.android.com/studio/projects/android-library
作ったAAR ~Clipper~- オーバーラップしたViewを生成し、指定したViewを簡単にくり抜くことができる- チュートリアル画面を作る上で便利(なはず)- 全てKotlinで実装- API level 21 or higher- MIT Licence- https://github.com/youmitsu/Clipper
例えば、このようなView
こうできます
Usage(Install)build.gradle(プロジェクトルート)app/build.gradle
Initialize ClipperLayout and execute clipping1. ClipperLayoutの初期化及び説明用Viewの作成(DescriptionViewというインスタンス生成)2. どのViewをくり抜くか(ClipEntryの作成)3. clipの実行
Case of multiple ClipperLayout- ClipBundleExecutorを使うと、まとめて複数のClip実行可能- 生成にはClipper.createBundleExecutor()というFactoryメソッドを使うClip時のアニメーションはここでAnimatorを指定
ClipAnimatiorDefaultClipAnimator CircleRevealAnimatorNone
Tips:〜ViewAnimationUtils.createCircularReveal()〜- 円形に広がるアニメーションを実装できる- API level 21〜- パラメータ- view: アニメーション対象のView、 centerX, centerY: 円形の中心座標- startRadius: アニメーション開始時の円の半径- endRaduis: アニメーション終了時の円の半径https://developer.android.com/reference/android/view/ViewAnimationUtils
まとめ、所感- AARライブラリは意外と作れる!- どこまで汎用的、強制すべきかを考えるのが難しい、、- まだ完成形ではないので、地道に機能追加、バグを無くしていきたい- ToolbarのItem取得するHelper的なクラスがあると楽なので、実装していきたい- FBいただけると助かります!!
ご静聴ありがとうございました。