Android:共有要素のアニメーション拡張

1.共有要素アニメーションの拡張

Android共有要素アニメーションはAndroid 5.0以降の一種の遷移アニメーションです。開発者が最も一般的に使用するのは、このフィールドtransitionNameと一般的なコロケーションのコードです。

val transitionActivityOptions = ActivityOptions.makeSceneTransitionAnimation(this, Pair(view,transitionName))
startActivity(Intent(this,MainActivity::class.java), transitionActivityOptions.toBundle())

2.機能拡張

一般的な共有要素のアニメーションはchangeImageTransformchangeClipBoundschangeBoundsfadeなどです。これらに加えて、独自のカスタム共有要素アニメーションを実際に追加できるため、このライブラリには、テキストカラーRBGアニメーション用のReColorReRadius、および半径が追加されています。レイアウトの丸みを帯びた角のアニメーション。

<transition class="XXXXXXX"/>

ボタンのtransitionSet追加

3つ目は、拡張ライブラリのレンダリングです。

第四に、実現の原則:

SharedElementCallbackでは、CaptureSharedElementSnapshotこのメソッドで取得されたこの分析メソッドで、幅と高さ、位置、色などを含む要素への初期ビューを抽出できます。生成された結果はパーセル可能です。このParcelableの場合、Activity1からParcelable継承するクラスに情報を抽出し、それを別のページに渡す必要があります。
そして、Activity2onCreateSnapshotViewonSharedElementStart我々が得たものとの契約。

5.クイック使用:ルートディレクトリのbuild.gradleにJitpackへの参照を追加します

allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}

モジュールのbuild.gradleで紹介します:

dependencies {
	        implementation 'com.github.ShowMeThe:Transition:1.0.0-release'
	}

プロジェクトのres / transitionにxmlを作成します。

<?xml version="1.0" encoding="utf-8"?>
<transitionSet  android:duration="xxxx"  xmlns:android="http://schemas.android.com/apk/res/android">

	<transition class="com.show.element.transition.Recolor"/>
	<transition class="com.show.element.transition.ReRadius"/>

</transitionSet>

setExtraShareElementCallBack()メソッドをアニメーションが必要な2つのアクティビティに追加します。このメソッドは拡張メソッドです。

おすすめ

転載: blog.csdn.net/zhireshini233/article/details/115189639