Compose Animation

Jetpack Compose アプリ内でアニメーションを作成して、ユーザー エクスペリエンスを拡充します。
最新の更新 安定版リリース リリース候補版 ベータ版リリース アルファ版リリース
2024 年 4 月 17 日 1.6.6 - - 1.7.0-alpha07

構造

Compose は、androidx 内の 7 つの Maven グループ ID を組み合わせたものです。各グループにはそれぞれの目的に応じて Compose の機能のサブセットが含まれており、それぞれに固有のリリースノートがあります。

次の表に、各グループの説明と、それぞれのリリースノートのリンクを示します。

グループ説明
compose.animationJetpack Compose アプリ内でアニメーションを作成して、ユーザー エクスペリエンスを高めます。
compose.compiler@Composable 関数を変換し、Kotlin コンパイラ プラグインで最適化を有効にします。
compose.foundationすぐに使用できるビルディング ブロックで Jetpack Compose アプリを作成し、基盤を拡張して独自のデザイン システム要素を構築します。
compose.materialすぐに使用できるマテリアル デザイン コンポーネントで Jetpack Compose UI を構築します。Compose の上位レベルのエントリ ポイントであり、www.material.io のガイドラインと適合するコンポーネントを提供するように設計されています。
compose.material3マテリアル デザインの進化版であるマテリアル デザイン 3 コンポーネントで Jetpack Compose UI を構築します。マテリアル 3 には、最新のテーマ設定とコンポーネント、ダイナミック カラーなどの Material You のパーソナライズ機能が含まれており、Android 12 の新しい視覚的スタイルとシステム UI と調和するように設計されています。
compose.runtimeCompose のプログラミング モデルと状態管理の基本ビルディング ブロックと、Compose コンパイラ プラグインがターゲットとするコアランタイム。
compose.uiレイアウト、描画、入力などのデバイス操作に必要な Compose UI の基本コンポーネント。

依存関係の宣言

Compose への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。

アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。

Groovy

dependencies {
    implementation "androidx.compose.animation:animation:1.6.6"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.12"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.animation:animation:1.6.6")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.12"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

依存関係について詳しくは、ビルド依存関係の追加をご覧ください。

フィードバック

お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。

新しい問題を報告する

詳細については、Issue Tracker のドキュメントをご覧ください。

バージョン 1.7

バージョン 1.7.0-alpha07

2024 年 4 月 17 日

androidx.compose.animation:animation-*:1.7.0-alpha07 がリリースされました。バージョン 1.7.0-alpha07 に含まれる commit については、こちらをご覧ください。

新機能

  • 新しい共有要素遷移 API のご利用とフィードバックをお待ちしております。これらの新しい試験運用版 API では、提供された修飾子を使用してレイアウト ツリー全体で共有されるレイアウトにタグ付けできます。これにより、共有コンテンツのセットが終了し、別のセットが開始したときに、境界がスムーズに変化します。(Icb0b9
  • sharedBounds でコンテンツをスケーリングするための新しい scaleInSharedContentToBoundsscaleOutSharedContentToBoundsI731c1

API の変更

  • AnimatedVisibilityScope.transition が安定版 API になりました。Modifier.animateEnterExit(..) も安定版になりました。(I6c1d1
  • ApproachLayoutModifierNodeModifier.approachLayout が安定版になりました。古い isMeasurementApproachComplete()isPlacementApproachComplete() をそれぞれ新しい isMeasurementApproachInProgress()isPlacementApproachInProgress() で置き換えています。
  • サポートが終了した intermediateLayout 修飾子を削除しました。(I3e91c
  • これで、periodicBias 値(浮動小数点数)を keyframesWithSpline に渡せるようになりました。これにより、スプラインの初期速度と最終速度が等しくなるようになります。スプラインを使用した繰り返し可能なアニメーションに有用です。バイアスは、周期性を確保するために各速度(初期および最終)がどの程度変更されるかを示します。(Ic1e6cb/292114811

バグの修正

  • 以前は 0..1 に固定されていたオーバーシュートとアンダーシュートのイージング曲線を修正しました。(I38747

バージョン 1.7.0-alpha06

2024 年 4 月 3 日

androidx.compose.animation:animation-*:1.7.0-alpha06 がリリースされました。バージョン 1.7.0-alpha06 に含まれる commit については、こちらをご覧ください。

新機能

  • アイテムの外観と消失アニメーションのサポートが LazyColumnLazyRow に追加されました。以前は、配置(並べ替え)アニメーションをサポートするために Modifier.animateItemPlacement() 修飾子を追加することができました。この修飾子のサポートを終了し、Modifier.animateItem() という新しい試験運用版でない修飾子を導入しました。これにより、外観(フェードイン)、消失(フェードアウト)、並べ替えの 3 つのアニメーション タイプをすべてサポートできます。(I2d7f7b/330152398b/150812265

バグの修正

  • updateTransition API のパフォーマンスを改善しました。

バージョン 1.7.0-alpha05

2024 年 3 月 20 日

androidx.compose.animation:animation-*:1.7.0-alpha05 がリリースされました。バージョン 1.7.0-alpha05 に含まれる commit については、こちらをご覧ください。

API の変更

  • SeekableTransitionStatesnapTo()seekTo() に置き換え、アニメーションを使用せずに状態をすぐにデスティネーション状態に変更する snapTo() を追加します。

バージョン 1.7.0-alpha04

2024 年 3 月 6 日

androidx.compose.animation:animation-*:1.7.0-alpha04 がリリースされました。バージョン 1.7.0-alpha04 に含まれる commit については、こちらをご覧ください。

API の変更

  • パスの方向を反転する新しい API Path.reverse() を追加しました。(I36348

バージョン 1.7.0-alpha03

2024 年 2 月 21 日

androidx.compose.animation:animation-*:1.7.0-alpha03 がリリースされました。バージョン 1.7.0-alpha03 に含まれる commit については、こちらをご覧ください

新機能

  • カスタム コンテンツの配置用に追加のパラメータを受け取る新しい Modifier.animateContentSize。(I5623ab/269803907
  • 新しい試験運用版の DeferredTargetAnimation を使用して、インスタンス化中に不明なサイズ、位置、その他のターゲットをアニメーション化します。(I60745

バージョン 1.7.0-alpha02

2024 年 2 月 7 日

androidx.compose.animation:animation-*:1.7.0-alpha02 がリリースされました。バージョン 1.7.0-alpha02 に含まれる commit については、こちらをご覧ください

バグの修正

  • KeyframesSpec の互換性に関する修正を行いました。(I2bdf3b/322214617
  • LazyList で使用すると Modifier.animateContentSize が正しくリセットされない問題を修正しました。(I070512b/322525716
  • 範囲外のタイムスタンプを使用した場合の KeyframesSpecIllegalStateException を修正しました。(I341b8b/322839811

バージョン 1.7.0-alpha01

2024 年 1 月 24 日

androidx.compose.animation:animation-*:1.7.0-alpha01 がリリースされました。バージョン 1.7.0-alpha01 に含まれる commit については、こちらをご覧ください

バージョン 1.6

バージョン 1.6.6

2024 年 4 月 17 日

androidx.compose.animation:animation-*:1.6.6 がリリースされました。前回のリリースからの変更はありません

バージョン 1.6.5

2024 年 4 月 3 日

androidx.compose.animation:animation-*:1.6.5 がリリースされました。バージョン 1.6.5 に含まれる commit については、こちらをご覧ください。

バージョン 1.6.4

2024 年 3 月 20 日

androidx.compose.animation:animation-*:1.6.4 がリリースされました。バージョン 1.6.4 に含まれる commit については、こちらをご覧ください。

バージョン 1.6.3

2024 年 3 月 6 日

androidx.compose.animation:animation-*:1.6.3 がリリースされました。バージョン 1.6.3 に含まれる commit については、こちらをご覧ください。

バージョン 1.6.2

2024 年 2 月 21 日

androidx.compose.animation:animation-*:1.6.2 がリリースされました。バージョン 1.6.2 に含まれる commit については、こちらをご覧ください

バージョン 1.6.1

2024 年 2 月 7 日

androidx.compose.animation:animation-*:1.6.1 がリリースされました。バージョン 1.6.1 に含まれる commit については、こちらをご覧ください

バグの修正

  • KeyframesSpec の互換性に関する修正を行いました。(I2bdf3b/322214617

バージョン 1.6.0

2024 年 1 月 24 日

androidx.compose.animation:animation-*:1.6.0 がリリースされました。バージョン 1.6.0 に含まれる commit については、こちらをご覧ください

バージョン 1.6.0-rc01

2024 年 1 月 10 日

androidx.compose.animation:animation-*:1.6.0-rc01 がリリースされました。バージョン 1.6.0-rc01 に含まれる commit については、こちらをご覧ください。

バージョン 1.6.0-beta03

2023 年 12 月 13 日

androidx.compose.animation:animation-*:1.6.0-beta03 がリリースされました。バージョン 1.6.0-beta03 に含まれる commit については、こちらをご覧ください

API の変更

  • 先読みを必要とするため、scaleInToFitContainerscaleOutToFitContainerAnimatedContentTransitionScope から一時的に削除しました。先読みがデフォルトでオンになったとき、または今後のリリースで先読み機能が有効になったときに利用できるようになります。

バージョン 1.6.0-beta02

2023 年 11 月 29 日

androidx.compose.animation:animation-*:1.6.0-beta02 がリリースされました。バージョン 1.6.0-beta02 に含まれる commit については、こちらをご覧ください

バージョン 1.6.0-beta01

2023 年 11 月 15 日

androidx.compose.animation:animation-*:1.6.0-beta01 がリリースされました。バージョン 1.6.0-beta01 に含まれる commit については、こちらをご覧ください

API の変更

  • より明確にするために、ExitTransition.Hold の名前を ExitTransition.KeepUntilTransitionsFinished に変更しました。(I1c490
  • keyframesWithSpline を使用して、単調スプラインを使用して N 次元の値を補間できるようになりました。OffsetIntOffsetDpOffset などの位置の値を補間する場合に特に便利です。試験運用版 API として追加されました。

バグの修正

  • ArcLine でスイープ グラデーションのレンダラのサポートを追加しました。(I4d5bb
  • PageSize.Fixed の equals と hashcode を実装します。(Ie3edeb/300134276
  • ウィンドウ インセットの変更に関するバイナリの互換性の問題を修正しました。(Iee695
  • マテリアル 3 チップ/ボタンのマテリアル コアレイヤを削除しました。これがないと、マイクロベンチマークが優れたパフォーマンスを示しました。(I55555

バージョン 1.6.0-alpha08

2023 年 10 月 18 日

androidx.compose.animation:animation-*:1.6.0-alpha08 がリリースされました。バージョン 1.6.0-alpha08 に含まれる commit については、こちらをご覧ください

API の変更

  • ビルダー パターンを保持する KeyframesSpecConfig#using を優先して、KeyframesSpecConfig#with を非推奨にしました。(I1d769

バージョン 1.6.0-alpha07

2023 年 10 月 4 日

androidx.compose.animation:animation-*:1.6.0-alpha07 がリリースされました。バージョン 1.6.0-alpha07 に含まれる commit については、こちらをご覧ください

API の変更

  • 固定タブとスクロール可能なタブ行にプライマリとセカンダリのバリアントが追加されました。これらは、Material3 で定義されている色とインジケーターの動作に正しくマッピングされます。
  • PrimaryScrollableTabRowSecondaryScrollableTabRow がスクロール状態を公開するようになりました。(Iec8f5b/260572337

バージョン 1.6.0-alpha06

2023 年 9 月 20 日

androidx.compose.animation:animation-*:1.6.0-alpha06 がリリースされました。バージョン 1.6.0-alpha06 に含まれる commit については、こちらをご覧ください

バージョン 1.6.0-alpha05

2023 年 9 月 6 日

androidx.compose.animation:animation-*:1.6.0-alpha05 がリリースされました。バージョン 1.6.0-alpha05 に含まれる commit については、こちらをご覧ください

API の変更

  • PathEasing を追加しました。これにより、イージング カーブに任意のパスを指定できます。(Idb4b9

バージョン 1.6.0-alpha04

2023 年 8 月 23 日

androidx.compose.animation:animation-*:1.6.0-alpha04 がリリースされました。バージョン 1.6.0-alpha04 に含まれる commit については、こちらをご覧ください

API の変更

  • SeekableTransitionState を追加して、デベロッパーが移行の進行状況を制御できるようにしました。(I8e69d

バージョン 1.6.0-alpha03

2023 年 8 月 9 日

androidx.compose.animation:animation-*:1.6.0-alpha03 がリリースされました。バージョン 1.6.0-alpha03 に含まれる commit については、こちらをご覧ください

API の変更

  • 新しい開始/終了遷移です。開始と終了のアニメーション中に、アニメーション化するコンテナのサイズに基づいてコンテンツがスケーリングされます。LookaheadScope コンポーズ可能な機能とインターフェースが安定版になりました。(Ifb2ce

バージョン 1.6.0-alpha02

2023 年 7 月 26 日

androidx.compose.animation:animation-*:1.6.0-alpha02 がリリースされました。バージョン 1.6.0-alpha02 に含まれる commit については、こちらをご覧ください

API の変更

  • 新しい ExitTransition.Hold は、開始と終了の両方の遷移が完了するまで AnimatedContent の送信コンテンツを表示します。(I5984f
  • コンポーザブルに許可される入力を指定する追加のアノテーション(I51109

バージョン 1.6.0-alpha01

2023 年 6 月 21 日

androidx.compose.animation:animation-*:1.6.0-alpha01 がリリースされました。バージョン 1.6.0-alpha01 に含まれる commit については、こちらをご覧ください

新機能

  • 先読みパスでターゲット サイズを報告して、Modifier.animateContentSizeAnimatedVisibility を先読みシステムに完全に統合できるようにします。

API の変更

  • 現在の測定パスが先読みパスかどうかを示す IntrinsincMeasureScope とその実装の新しいプロパティ(例: MeasureScope)。(I7a812

バグの修正

  • スプリング アニメーションから割り当てを削除しました。(Ie9431
  • Enum.valueOf の値パラメータ名を変更しました。(Ia9b89
  • enum valueOf からスローされる例外が増えました。(I818fe

バージョン 1.5

バージョン 1.5.4

2023 年 10 月 18 日

androidx.compose.animation:animation-*:1.5.4 がリリースされました。バージョン 1.5.4 に含まれる commit については、こちらをご覧ください

バージョン 1.5.3

2023 年 10 月 4 日

androidx.compose.animation:animation-*:1.5.3 がリリースされました。このバージョンに変更はありません

バージョン 1.5.2

2023 年 9 月 27 日

androidx.compose.animation:animation-*:1.5.2 がリリースされました。バージョン 1.5.2 に含まれる commit については、こちらをご覧ください

バージョン 1.5.1

2023 年 9 月 6 日

androidx.compose.foundation:foundation-*:1.5.1 がリリースされました。バージョン 1.5.1 に含まれる commit については、こちらをご覧ください

バグの修正

  • キーボードが表示され、readOnly が true のときに編集可能なテキスト フィールドを修正しました。また、フォーカスされているときに readOnly を true から false に変更したときにキーボードが表示されない問題を修正しました。(I34a19b/246909589

バージョン 1.5.1

2023 年 9 月 6 日

androidx.compose.animation:animation-*:1.5.1 がリリースされました。バージョン 1.5.1 に含まれる commit については、こちらをご覧ください

バージョン 1.5.0

2023 年 8 月 9 日

androidx.compose.animation:animation-*:1.5.0 がリリースされました。バージョン 1.5.0 に含まれる commit については、こちらをご覧ください。

バージョン 1.5.0-rc01

2023 年 7 月 26 日

androidx.compose.animation:animation-*:1.5.0-rc01 がリリースされました。バージョン 1.5.0-rc01 に含まれる commit については、こちらをご覧ください

バグの修正

  • プリミティブ状態タイプ(MutableIntState など)で .value を呼び出すと、無効な修正に関する lint 警告が報告される問題を修正しました。検査で、正しいプロパティへの移行が推奨されるようになりました。(Iba953b/287279257

  • オプションで、mutableStateOf() 呼び出しをプリミティブ用の対応する特殊な型に移行することをおすすめします。lint ID は AutoboxingStateCreation です。以前は、この検査はすべてのプロジェクトでデフォルトで有効でした。Android Studio のエディタとプロジェクトの lint 出力でこの警告を表示するには、次に示すように、モジュールの build.gradle または build.gradle.kts 構成内で warning "AutoboxingStateCreation" を宣言して、重大度を「情報」から「警告」(またはそれ以上)に変更します。(I34f7e

        android {
            lint {
                warning "AutoboxingStateCreation"
            }
            ...
        }
    

バージョン 1.5.0-beta03

2023 年 6 月 28 日

androidx.compose.animation:animation-*:1.5.0-beta03 がリリースされました。バージョン 1.5.0-beta03 に含まれる commit については、こちらをご覧ください

バージョン 1.5.0-beta02

2023 年 6 月 7 日

androidx.compose.animation:animation-*:1.5.0-beta02 がリリースされました。バージョン 1.5.0-beta02 に含まれる commit については、こちらをご覧ください

バージョン 1.5.0-beta01

2023 年 5 月 24 日

androidx.compose.animation:animation-*:1.5.0-beta01 がリリースされました。バージョン 1.5.0-beta01 に含まれる commit については、こちらをご覧ください

API の変更

  • 再コンポーズ、カラー アニメーション、AndroidComposeView の割り当てを削除しました。(Ib2bfa

バグの修正

  • スプリング アニメーションから割り当てを削除しました。(Ie9431

バージョン 1.5.0-alpha04

2023 年 5 月 10 日

androidx.compose.animation:animation-*:1.5.0-alpha04 がリリースされました。バージョン 1.5.0-alpha04 に含まれる commit については、こちらをご覧ください

API の変更

  • AnimatedContentContentKey がサポートされ、遷移のタイミングをより細かく制御できるようになりました。(Ic069b

バージョン 1.5.0-alpha03

2023 年 4 月 19 日

androidx.compose.animation:animation-*:1.5.0-alpha03 がリリースされました。バージョン 1.5.0-alpha03 に含まれる commit については、こちらをご覧ください

新機能

  • LookaheadScope での SubcomposeLayout の新しいデフォルト動作。これにより、条件付きスロット(TabRowScaffoldBoxWithConstraints など)のない SubcomposeLayouts が先読みアニメーションとうまく連携できるようになります。

API の変更

  • 先読みパスの測定ポリシーを再利用する新しいデフォルトの intermediateMeasurePolicy では、条件付きスロットのない SubcomposeLayout サブタイプ(ScaffoldTabRowBoxWithConstraints など)で先読みをデフォルトで使用できるようになりました。(Id84c8
  • Enter 遷移と exit 遷移を組み合わせるために、infix fun の名前を togetherWith に変更しました。コンテンツ ラムダのレシーバーとして新しい AnimatedContentScope を追加しました。(Ic39ae

バージョン 1.5.0-alpha02

2023 年 4 月 5 日

androidx.compose.animation:animation-*:1.5.0-alpha02 がリリースされました。バージョン 1.5.0-alpha02 に含まれる commit については、こちらをご覧ください

新機能

  • SubcomposeLayout の先読みをサポートする新しい試験運用版 API を追加しました。これにより、SubcomposeLayoutLookaheadScope で適切に機能できるようになります。SubcomposeLayout の特定のサブタイプですぐに使えるサポートがまもなく追加される予定です。

API の変更

  • 先読みベースのアニメーション中に測定/レイアウト ロジックを処理するための中間測定ポリシーを追加する、新しい SubcomposeLayout API。(I017d3

バージョン 1.5.0-alpha01

2023 年 3 月 22 日

androidx.compose.animation:animation-*:1.5.0-alpha01 がリリースされました。バージョン 1.5.0-alpha01 に含まれる commit については、こちらをご覧ください

API の変更

  • AnimatedContent API が安定版になりました。AnimatedContentScope の名前が AnimatedContentTransitionScope に変更されました。scaleInscaleOut が安定版 API になりました。(Iaf54e

バージョン 1.4

バージョン 1.4.3

2023 年 5 月 3 日

androidx.compose.animation:animation:1.4.3androidx.compose.animation:animation-core:1.4.3androidx.compose.animation:animation-graphics:1.4.3 がリリースされました。変更はありません(バージョン バンプのみ)。

バージョン 1.4.2

2023 年 4 月 19 日

androidx.compose.animation:animation:1.4.2androidx.compose.animation:animation-core:1.4.2androidx.compose.animation:animation-graphics:1.4.2 がリリースされました。変更はありません。バージョン 1.4.2 に含まれる commit については、こちらをご覧ください

バージョン 1.4.1

2023 年 4 月 5 日

androidx.compose.animation:animation:1.4.1androidx.compose.animation:animation-core:1.4.1androidx.compose.animation:animation-graphics:1.4.1 がリリースされました。変更はありません。バージョン 1.4.1 に含まれる commit については、こちらをご覧ください

バージョン 1.4.0

2023 年 3 月 22 日

androidx.compose.animation:animation:1.4.0androidx.compose.animation:animation-core:1.4.0androidx.compose.animation:animation-graphics:1.4.0 がリリースされました。バージョン 1.4.0 に含まれる commit については、こちらをご覧ください

1.3.0 以降の重要な変更

  • ツールラベルが rememberInfiniteTransition と、InfiniteTransition と Transition のすべての拡張関数(InfiniteTransition#animateColor など)でサポートされています。(I56ef7

バージョン 1.4.0-rc01

2023 年 3 月 8 日

androidx.compose.animation:animation:1.4.0-rc01androidx.compose.animation:animation-core:1.4.0-rc01androidx.compose.animation:animation-graphics:1.4.0-rc01 がリリースされました。変更はありません。バージョン 1.4.0-rc01 に含まれる commit については、こちらをご覧ください。

バージョン 1.4.0-beta02

2023 年 2 月 22 日

androidx.compose.animation:animation:1.4.0-beta02androidx.compose.animation:animation-core:1.4.0-beta02androidx.compose.animation:animation-graphics:1.4.0-beta02 がリリースされました。変更はありません。バージョン 1.4.0-beta02 に含まれる commit については、こちらをご覧ください

バージョン 1.4.0-beta01

2023 年 2 月 8 日

androidx.compose.animation:animation:1.4.0-beta01androidx.compose.animation:animation-core:1.4.0-beta01androidx.compose.animation:animation-graphics:1.4.0-beta01 がリリースされました。変更はありません。バージョン 1.4.0-beta01 に含まれる commit については、こちらをご覧ください

バージョン 1.4.0-alpha05

2023 年 1 月 25 日

androidx.compose.animation:animation:1.4.0-alpha05androidx.compose.animation:animation-core:1.4.0-alpha05androidx.compose.animation:animation-graphics:1.4.0-alpha05 がリリースされました。バージョン 1.4.0-alpha05 に含まれる commit については、こちらをご覧ください

変更

  • アニメーション ライブラリについては、最後のアルファ版から変更はありません。バージョン アップのみです。

バージョン 1.4.0-alpha04

2023 年 1 月 11 日

androidx.compose.animation:animation:1.4.0-alpha04androidx.compose.animation:animation-core:1.4.0-alpha04androidx.compose.animation:animation-graphics:1.4.0-alpha04 がリリースされました。バージョン 1.4.0-alpha04 に含まれる commit については、こちらをご覧ください。

新機能

  • rememberInfiniteTransition と、InfiniteTransition および Transition のすべての拡張関数(InfiniteTransition#animateColor など)で、ツールラベルがサポートされるようになりました。(I56ef7

API の変更

  • InfiniteTransition#TransitionAnimationState API と InfiniteTransition#animations API が公開されました。(I36682

バージョン 1.4.0-alpha03

2022 年 12 月 7 日

androidx.compose.animation:animation:1.4.0-alpha03androidx.compose.animation:animation-core:1.4.0-alpha03androidx.compose.animation:animation-graphics:1.4.0-alpha03 がリリースされました。バージョン 1.4.0-alpha03 に含まれる commit については、こちらをご覧ください

API の変更

  • Compose ルールを使用した UI テストでは、withFrameNanos コールバック中に再開された継続は、すべてのフレーム コールバックの実行が終了するまでディスパッチされません。これは、正常に実行されている Compose の動作と一致します。ただし、以前の動作に依存するテストは失敗する可能性があります。これは、withFrameNanos または withFrameMillis を直接呼び出して、コールバック内への移動が必要になる可能性のあるそうした関数に渡される、コールバック外のロジックを持つコードにのみ影響があります。アニメーションのテストの変更については、こちらの CL の例をご覧ください。
  • TestMonotonicFrameClock コンストラクタとファクトリ関数に、withFrameNanos コールバックの後、呼び出し元のコルーチンを再開する前にコードを実行するための、オプションの onPerformTraversals: (Long) -> Unit パラメータを追加しました。(Idb413b/254115946b/222093277b/255802670
  • AnimatedContent のツールラベル用の新しいパラメータ。(Iebe2d

バージョン 1.4.0-alpha02

2022 年 11 月 9 日

androidx.compose.animation:animation:1.4.0-alpha02androidx.compose.animation:animation-core:1.4.0-alpha02androidx.compose.animation:animation-graphics:1.4.0-alpha02 がリリースされました。バージョン 1.4.0-alpha02 に含まれる commit については、こちらをご覧ください

API の変更

  • コンポーザブルの内部状態を変更するツールを利用できるよう ToolingState を追加しました。(Ie6614

バージョン 1.4.0-alpha01

2022 年 10 月 24 日

androidx.compose.animation:animation:1.4.0-alpha01androidx.compose.animation:animation-core:1.4.0-alpha01androidx.compose.animation:animation-graphics:1.4.0-alpha01 がリリースされました。バージョン 1.4.0-alpha01 に含まれる commit については、こちらをご覧ください

バグの修正

  • AnimatedContent でアニメーションが中断される不具合を修正しました(b/238662479

バージョン 1.3

バージョン 1.3.3

2023 年 1 月 11 日

androidx.compose.animation:animation:1.3.3androidx.compose.animation:animation-core:1.3.3androidx.compose.animation:animation-graphics:1.3.3 がリリースされました。バージョン 1.3.3 に含まれる commit については、こちらをご覧ください

  • 1.3.2 からの変更はありません。

バージョン 1.3.2

2022 年 12 月 7 日

androidx.compose.animation:animation:1.3.2androidx.compose.animation:animation-core:1.3.2androidx.compose.animation:animation-graphics:1.3.2 がリリースされました。バージョン 1.3.2 に含まれる commit については、こちらをご覧ください

バグの修正

  • androidx.compose.ui 1.3.2 をサポートするように更新しました

バージョン 1.3.1

2022 年 11 月 9 日

androidx.compose.animation:animation:1.3.1androidx.compose.animation:animation-core:1.3.1androidx.compose.animation:animation-graphics:1.3.1 がリリースされました。バージョン 1.3.1 に含まれる commit については、こちらをご覧ください

バージョン 1.3.0

2022 年 10 月 24 日

androidx.compose.animation:animation:1.3.0androidx.compose.animation:animation-core:1.3.0androidx.compose.animation:animation-graphics:1.3.0 がリリースされました。バージョン 1.3.0 に含まれる commit については、こちらをご覧ください

1.2.0 以降の重要な変更

  • 新しいイージング関数のセットが安定版になりました

バージョン 1.3.0-rc01

2022 年 10 月 5 日

androidx.compose.animation:animation:1.3.0-rc01androidx.compose.animation:animation-core:1.3.0-rc01androidx.compose.animation:animation-graphics:1.3.0-rc01 がリリースされました。バージョン 1.3.0-rc01 に含まれる commit については、こちらをご覧ください

バージョン 1.3.0-beta03

2022 年 9 月 21 日

androidx.compose.animation:animation:1.3.0-beta03androidx.compose.animation:animation-core:1.3.0-beta03androidx.compose.animation:animation-graphics:1.3.0-beta03 がリリースされました。バージョン 1.3.0-beta03 に含まれる commit については、こちらをご覧ください

  • 1.3.0-beta02 からの変更はありません。

バージョン 1.3.0-beta02

2022 年 9 月 7 日

androidx.compose.animation:animation:1.3.0-beta02androidx.compose.animation:animation-core:1.3.0-beta02androidx.compose.animation:animation-graphics:1.3.0-beta02 がリリースされました。バージョン 1.3.0-beta02 に含まれる commit については、こちらをご覧ください

  • Kotlin.experimental は、非推奨になったため、コンパイラ オプションから削除されました。

バージョン 1.3.0-beta01

2022 年 8 月 24 日

androidx.compose.animation:animation:1.3.0-beta01androidx.compose.animation:animation-core:1.3.0-beta01androidx.compose.animation:animation-graphics:1.3.0-beta01 がリリースされました。バージョン 1.3.0-beta01 に含まれる commit については、こちらをご覧ください

バージョン 1.3.0-alpha03

2022 年 8 月 10 日

androidx.compose.animation:animation:1.3.0-alpha03androidx.compose.animation:animation-core:1.3.0-alpha03androidx.compose.animation:animation-graphics:1.3.0-alpha03 がリリースされました。バージョン 1.3.0-alpha03 に含まれる commit については、こちらをご覧ください

API の変更

  • CrossfadeanimateAsStateAnimatable のツールラベル用の新しいパラメータ。(Iac08a
  • 具体的な期間ではなく分数でキーフレームを定義する atFraction 関数を追加しました。(I20c76b/232059455

バージョン 1.3.0-alpha02

2022 年 7 月 27 日

androidx.compose.animation:animation:1.3.0-alpha02androidx.compose.animation:animation-core:1.3.0-alpha02androidx.compose.animation:animation-graphics:1.3.0-alpha02 がリリースされました。バージョン 1.3.0-alpha02 に含まれる commit については、こちらをご覧ください

バージョン 1.3.0-alpha01

2022 年 6 月 29 日

androidx.compose.animation:animation:1.3.0-alpha01androidx.compose.animation:animation-core:1.3.0-alpha01androidx.compose.animation:animation-graphics:1.3.0-alpha01 がリリースされました。バージョン 1.3.0-alpha01 に含まれる commit については、こちらをご覧ください

API の変更

  • 実際の測定 / レイアウトの前の先読みパスをサポートする新しい LookaheadLayout。レイアウトが変更されたときに事前計算を行いつつ、事後先読みの測定 / レイアウトを許可することが可能になるため、事前計算済みのサイズ / 位置を使用して、ターゲットに対するサイズと位置をアニメーション化することができます。SubcomposeLayouts はまだサポートされていませんが、今後のリリースで対応する予定です。(I477f5

バージョン 1.2

バージョン 1.2.1

2022 年 8 月 10 日

androidx.compose.animation:animation:1.2.1androidx.compose.animation:animation-core:1.2.1androidx.compose.animation:animation-graphics:1.2.1 がリリースされました。バージョン 1.2.1 に含まれる commit については、こちらをご覧ください

バージョン 1.2.0

2022 年 7 月 27 日

androidx.compose.animation:animation:1.2.0androidx.compose.animation:animation-core:1.2.0androidx.compose.animation:animation-graphics:1.2.0 がリリースされました。バージョン 1.2.0 に含まれる commit については、こちらをご覧ください

1.1.0 以降の重要な変更

  • Compose Animation では、開発者向けオプションの [Animator 再生時間スケール] 設定がサポートされるようになりました。
  • 選択可能な新しい試験運用版のイージング カーブが豊富にあります。
  • AnimatedImageVectorrepeatCountrepeatMode をサポートするようになりました。

バージョン 1.2.0-rc03

2022 年 6 月 29 日

androidx.compose.animation:animation:1.2.0-rc03androidx.compose.animation:animation-core:1.2.0-rc03androidx.compose.animation:animation-graphics:1.2.0-rc03 がリリースされました。バージョン 1.2.0-rc03 に含まれる commit については、こちらをご覧ください

  • 1.2.0-rc02 からの変更はありません。

バージョン 1.2.0-rc02

2022 年 6 月 22 日

androidx.compose.animation:animation:1.2.0-rc02androidx.compose.animation:animation-core:1.2.0-rc02androidx.compose.animation:animation-graphics:1.2.0-rc02 がリリースされました。バージョン 1.2.0-rc02 に含まれる commit については、こちらをご覧ください

バグの修正

  • イージング関数の ExperimentalEasingApi アノテーションを削除しました。(Ied441

バージョン 1.2.0-rc01

2022 年 6 月 15 日

androidx.compose.animation:animation:1.2.0-rc01androidx.compose.animation:animation-core:1.2.0-rc01androidx.compose.animation:animation-graphics:1.2.0-rc01 がリリースされました。バージョン 1.2.0-rc01 に含まれる commit については、こちらをご覧ください

API の変更

  • compose ライブラリのインターフェースが jdk8 デフォルト インターフェース メソッドを使ってビルドされるようになりました。(I5bcf1

バージョン 1.2.0-beta03

2022 年 6 月 1 日

androidx.compose.animation:animation:1.2.0-beta03androidx.compose.animation:animation-core:1.2.0-beta03androidx.compose.animation:animation-graphics:1.2.0-beta03 がリリースされました。バージョン 1.2.0-beta03 に含まれる commit については、こちらをご覧ください

API の変更

  • アニメーション用の試験運用版のイージング カーブを追加しました。(I64a38

バージョン 1.2.0-beta02

2022 年 5 月 18 日

androidx.compose.animation:animation:1.2.0-beta02androidx.compose.animation:animation-core:1.2.0-beta02androidx.compose.animation:animation-graphics:1.2.0-beta02 がリリースされました。バージョン 1.2.0-beta02 に含まれる commit については、こちらをご覧ください

バージョン 1.2.0-beta01

2022 年 5 月 11 日

androidx.compose.animation:animation:1.2.0-beta01androidx.compose.animation:animation-core:1.2.0-beta01androidx.compose.animation:animation-graphics:1.2.0-beta01 がリリースされました。バージョン 1.2.0-beta01 に含まれる commit については、こちらをご覧ください

  • これは、1.2 ベータ版の最初のリリースです。最後のアルファ版からの変更はありません。

バージョン 1.2.0-alpha08

2022 年 4 月 20 日

androidx.compose.animation:animation:1.2.0-alpha08androidx.compose.animation:animation-core:1.2.0-alpha08androidx.compose.animation:animation-graphics:1.2.0-alpha08 がリリースされました。バージョン 1.2.0-alpha08 に含まれる commit については、こちらをご覧ください

バージョン 1.2.0-alpha07

2022 年 4 月 6 日

androidx.compose.animation:animation:1.2.0-alpha07androidx.compose.animation:animation-core:1.2.0-alpha07androidx.compose.animation:animation-graphics:1.2.0-alpha07 がリリースされました。バージョン 1.2.0-alpha07 に含まれる commit については、こちらをご覧ください

API の変更

  • AnimatedImageVectorrepeatCountrepeatMode をサポートするようになりました(Ia3e75b/199304067

バージョン 1.2.0-alpha06

2022 年 3 月 23 日

androidx.compose.animation:animation:1.2.0-alpha06androidx.compose.animation:animation-core:1.2.0-alpha06androidx.compose.animation:animation-graphics:1.2.0-alpha06 がリリースされました。バージョン 1.2.0-alpha06 に含まれる commit については、こちらをご覧ください

API の変更

  • ベクター型ドローアブルの解析を更新して、現在のレイアウト方向が RTL の場合に VectorPainter のコンテンツを切り替える自動ミラーリングをサポートするようにしました。(I79cd9b/185760237

バグの修正

  • ベクター グラフィック API を更新して、@UiComposable の代わりに適切なコンポーズ可能アノテーション @VectorComposable を使用するようにしました(I942bc

バージョン 1.2.0-alpha05

2022 年 3 月 9 日

androidx.compose.animation:animation:1.2.0-alpha05androidx.compose.animation:animation-core:1.2.0-alpha05androidx.compose.animation:animation-graphics:1.2.0-alpha05 がリリースされました。バージョン 1.2.0-alpha05 に含まれる commit については、こちらをご覧ください

API の変更

  • 今回、Compose Animation では、開発者向けオプションの [Animator 再生時間スケール] 設定がサポートされるようになりました。(I5a4fcb/161675988

バージョン 1.2.0-alpha04

2022 年 2 月 23 日

androidx.compose.animation:animation:1.2.0-alpha04androidx.compose.animation:animation-core:1.2.0-alpha04androidx.compose.animation:animation-graphics:1.2.0-alpha04 がリリースされました。バージョン 1.2.0-alpha04 に含まれる commit については、こちらをご覧ください

バージョン 1.2.0-alpha03

2022 年 2 月 9 日

androidx.compose.animation:animation:1.2.0-alpha03androidx.compose.animation:animation-core:1.2.0-alpha03androidx.compose.animation:animation-graphics:1.2.0-alpha03 がリリースされました。バージョン 1.2.0-alpha03 に含まれる commit については、こちらをご覧ください

バージョン 1.2.0-alpha02

2022 年 1 月 26 日

androidx.compose.animation:animation:1.2.0-alpha02androidx.compose.animation:animation-core:1.2.0-alpha02androidx.compose.animation:animation-graphics:1.2.0-alpha02 がリリースされました。バージョン 1.2.0-alpha02 に含まれる commit については、こちらをご覧ください

バージョン 1.2.0-alpha01

2022 年 1 月 12 日

androidx.compose.animation:animation:1.2.0-alpha01androidx.compose.animation:animation-core:1.2.0-alpha01androidx.compose.animation:animation-graphics:1.2.0-alpha01 がリリースされました。バージョン 1.2.0-alpha01 に含まれる commit については、こちらをご覧ください

API の変更

  • animatedVectorResource ではなく AnimatedImageVector.animatedVectorResource を使用して <animated-vector> リソース ファイルを読み込みます。
    • AnimatedImageVector#painterFor ではなく rememberAnimatedVectorResource を使用して AnimatedImageVector をレンダリングします。(I9c300

バグの修正

  • toString メソッドを Animatable と AnimationResult に追加します。(Icd3a6

依存関係の更新

  • Kotlin 1.6.10 に依存するようになりました。

バージョン 1.1

バージョン 1.1.1

2022 年 2 月 23 日

androidx.compose.animation:animation:1.1.1androidx.compose.animation:animation-core:1.1.1androidx.compose.animation:animation-graphics:1.1.1 がリリースされました。バージョン 1.1.1 に含まれる commit については、こちらをご覧ください

バグの修正

  • androidx.compose.ui.platform.RenderNodeLayer.updateDisplayListNullPointerException を修正しました(aosp/1947059b/206677462
  • Android のクリップボードから読み取る際にクリップボードの内容が原因で発生するクラッシュを修正しました。(I06020b/197769306
  • LazyVerticalGrid の RTL を修正しました(aosp/1931080b/207510535

バージョン 1.1.0

2022 年 2 月 9 日

androidx.compose.animation:animation:1.1.0androidx.compose.animation:animation-core:1.1.0androidx.compose.animation:animation-graphics:1.1.0 がリリースされました。バージョン 1.1.0 に含まれる commit については、こちらをご覧ください

1.0.0 以降の重要な変更

  • Android 12 のオーバースクロール効果の安定版サポートを追加
  • タップ ターゲットのサイズ調整を改善
  • Compose 1.0 では、マテリアル ユーザー補助ガイドラインタップ ターゲットのサイズに合わせるために、マテリアル コンポーネントのレイアウト スペースが拡張されることに注意してください。たとえば、ボタンのサイズをいくら小さく設定しても、ボタンのタップ ターゲットは最小サイズの 48 x 48 dp に拡張されます。これにより、Compose Material とマテリアル デザイン コンポーネントの動作が一致し、View と Compose を混在させても動作の一貫性を保持できます。また、Compose Material コンポーネントを使用して UI を作成する際に、タップ ターゲットに関するユーザー補助の最小要件が確実に満たされます。
  • ナビゲーション レールの安定版のサポートを追加
  • 試験運用版であったいくつかの API を安定版に移行
  • 新しいバージョンの Kotlin のサポート

バージョン 1.1.0-rc03

2022 年 1 月 26 日

androidx.compose.animation:animation:1.1.0-rc03androidx.compose.animation:animation-core:1.1.0-rc03androidx.compose.animation:animation-graphics:1.1.0-rc03 がリリースされました。バージョン 1.1.0-rc03 に含まれる commit については、こちらをご覧ください

バグの修正

  • Compose Material 1.1.0-rc03 をサポートするように更新しました。

バージョン 1.1.0-rc01

2021 年 12 月 15 日

androidx.compose.animation:animation:1.1.0-rc01androidx.compose.animation:animation-core:1.1.0-rc01 がリリースされました。バージョン 1.1.0-rc01 に含まれる commit については、こちらをご覧ください。

API の変更

  • animatedVectorResource ではなく AnimatedImageVector.animatedVectorResource を使用して <animated-vector> リソース ファイルを読み込みます。
    • AnimatedImageVector#painterFor ではなく rememberAnimatedVectorResource を使用して AnimatedImageVector をレンダリングします。(I9c300

バージョン 1.1.0-beta04

2021 年 12 月 1 日

androidx.compose.animation:animation:1.1.0-beta04androidx.compose.animation:animation-core:1.1.0-beta04androidx.compose.animation:animation-graphics:1.1.0-beta04 がリリースされました。バージョン 1.1.0-beta04 に含まれる commit については、こちらをご覧ください

新機能

  • Kotlin 1.6.0 との互換性を確保するために更新しました

バージョン 1.1.0-beta03

2021 年 11 月 17 日

androidx.compose.animation:animation:1.1.0-beta03androidx.compose.animation:animation-core:1.1.0-beta03androidx.compose.animation:animation-graphics:1.1.0-beta03 がリリースされました。バージョン 1.1.0-beta03 に含まれる commit については、こちらをご覧ください

API の変更

  • プレースメントの変更を監視できるように、新しい修飾子 Modifier.onPlaced を追加しました。これにより、監視対象のプレースメントの変更に基づいて、子修飾子のオフセットに追加の変更を行うことができます。(I558fd
  • Crossfade で contentKey が新たにサポートされるようになりました。contentKey は、アニメーション システムによる等価性の確認に使用されます。したがって、状態ごとに適切な contentKey を指定することで、状態に応じたカスタム比較を実行できます。

    contentKey は、コンテンツを保存および復元するためのキーとしても使用されます。(I2e055b/197907070

バージョン 1.1.0-beta02

2021 年 11 月 3 日

androidx.compose.animation:animation:1.1.0-beta02androidx.compose.animation:animation-core:1.1.0-beta02androidx.compose.animation:animation-graphics:1.1.0-beta02 がリリースされました。バージョン 1.1.0-beta02 に含まれる commit については、こちらをご覧ください

バグの修正

  • ツールをサポートする新しいアニメーション API が追加されました。具体的には、Transition でアニメーションとその構成を検査するツールが利用可能になりました。(I4116e

バージョン 1.1.0-beta01

2021 年 10 月 27 日

androidx.compose.animation:animation:1.1.0-beta01androidx.compose.animation:animation-core:1.1.0-beta01androidx.compose.animation:animation-graphics:1.1.0-beta01 がリリースされました。バージョン 1.1.0-beta01 に含まれる commit については、こちらをご覧ください

API の変更

  • ツールをサポートする新しいアニメーション API が追加されました。具体的には、Transition でアニメーションとその構成を検査するツールが利用可能になりました。(I4116e

バージョン 1.1.0-alpha06

2021 年 10 月 13 日

androidx.compose.animation:animation:1.1.0-alpha06androidx.compose.animation:animation-core:1.1.0-alpha06androidx.compose.animation:animation-graphics:1.1.0-alpha06 がリリースされました。バージョン 1.1.0-alpha06 に含まれる commit については、こちらをご覧ください。

バージョン 1.1.0-alpha05

2021 年 9 月 29 日

androidx.compose.animation:animation:1.1.0-alpha05androidx.compose.animation:animation-core:1.1.0-alpha05androidx.compose.animation:animation-graphics:1.1.0-alpha05 がリリースされました。バージョン 1.1.0-alpha05 に含まれる commit については、こちらをご覧ください

API の変更

  • EnterTransitionExitTransition、一部の AnimatedVisibility API が安定版になりました。MutableTransitionState.isIdle も試験運用版ではなくなりました。(I5072d

  • 互換性を破る変更: EnterTransition / ExitTransition ファクトリのラムダが、パラメータ リストの最後の位置に移動しました。(I5072d

バージョン 1.1.0-alpha04

2021 年 9 月 15 日

androidx.compose.animation:animation:1.1.0-alpha04androidx.compose.animation:animation-core:1.1.0-alpha04androidx.compose.animation:animation-graphics:1.1.0-alpha04 がリリースされました。バージョン 1.1.0-alpha04 に含まれる commit については、こちらをご覧ください

バージョン 1.1.0-alpha03

2021 年 9 月 1 日

androidx.compose.animation:animation:1.1.0-alpha03androidx.compose.animation:animation-core:1.1.0-alpha03androidx.compose.animation:animation-graphics:1.1.0-alpha03 がリリースされました。バージョン 1.1.0-alpha03 に含まれる commit については、こちらをご覧ください

新機能

  • Kotlin 1.5.30 に依存するように Compose 1.1.0-alpha03 を更新しました。(I74545

バージョン 1.1.0-alpha02

2021 年 8 月 18 日

androidx.compose.animation:animation:1.1.0-alpha02androidx.compose.animation:animation-core:1.1.0-alpha02androidx.compose.animation:animation-graphics:1.1.0-alpha02 がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください

API の変更

  • StartOffset が repeatable と infiniteRepeatable でサポートされるようになりました。これは、アニメーションの開始前に、開始時間を遅らせたりアニメーションを早送りしたりするために使用するものです。この開始オフセットは繰り返されません(Ic679fb/195079908
  • スケール用の新しい開始 / 終了遷移。他のタイプの Enter / ExitTransitions と組み合わせて使用できます。(I372dab/191325593

バージョン 1.1.0-alpha01

2021 年 8 月 4 日

androidx.compose.animation:animation:1.1.0-alpha01androidx.compose.animation:animation-core:1.1.0-alpha01androidx.compose.animation:animation-graphics:1.1.0-alpha01 がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください

API の変更

  • AnimatedImageVector と関連する API が新しい androidx.compose.animation:animation-graphics モジュールに追加されました。(I60873

バグの修正

  • InfiniteAnimationPolicy を :compose:ui に移動しました(I5eb09b/160602714

バージョン 1.0

バージョン 1.0.5

2021 年 11 月 3 日

androidx.compose.animation:animation:1.0.5androidx.compose.animation:animation-core:1.0.5 がリリースされました。バージョン 1.0.5 に含まれる commit については、こちらをご覧ください

バグの修正

  • derivedStateOf インスタンスをトラッキングするクラッシュを修正しました。(aosp/1792247

バージョン 1.0.4

2021 年 10 月 13 日

androidx.compose.animation:animation:1.0.4androidx.compose.animation:animation-core:1.0.4 がリリースされました。バージョン 1.0.4 に含まれる commit については、こちらをご覧ください

依存関係の更新

  • Kotlin 1.5.31 に依存するように更新しました。

バージョン 1.0.3

2021 年 9 月 29 日

androidx.compose.animation:animation:1.0.3androidx.compose.animation:animation-core:1.0.3 がリリースされました。バージョン 1.0.3 に含まれる commit については、こちらをご覧ください

依存関係の更新

  • Kotlin 1.5.30 に依存するように更新しました。

バージョン 1.0.2

2021 年 9 月 1 日

androidx.compose.animation:animation:1.0.2androidx.compose.animation:animation-core:1.0.2 がリリースされました。バージョン 1.0.2 に含まれる commit については、こちらをご覧ください

Compose 1.0.2 リリースをサポートするように更新しました。Compose 1.0.2 は、引き続き Kotlin 1.5.21 と互換性があります。

バージョン 1.0.1

2021 年 8 月 4 日

androidx.compose.animation:animation:1.0.1androidx.compose.animation:animation-core:1.0.1 がリリースされました。バージョン 1.0.1 に含まれる commit については、こちらをご覧ください

依存関係の更新

  • Kotlin 1.5.21 に依存するように更新しました。

バージョン 1.0.0

2021 年 7 月 28 日

androidx.compose.animation:animation:1.0.0androidx.compose.animation:animation-core:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください

1.0.0 の主な機能

これは Compose の最初の安定版リリースです。詳細については、Compose リリースの公式ブログをご覧ください。

既知の問題

  • Android Studio Bumblebee Canary 4 または AGP 7.1.0-alpha04 / 7.1.0-alpha05 を使用している場合、次のクラッシュが発生することがあります。

      java.lang.AbstractMethodError: abstract method "void androidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)"
    

    修正するには、build.gradle ファイルで一時的に minSdkVersion を 24 以上に変更します。この問題は、次期バージョンの Android Studio Bumblebee と AGP 7.1 で修正される予定です。(b/194289155

バージョン 1.0.0-rc02

2021 年 7 月 14 日

androidx.compose.animation:animation:1.0.0-rc02androidx.compose.animation:animation-core:1.0.0-rc02 がリリースされました。バージョン 1.0.0-rc02 に含まれる commit については、こちらをご覧ください

バージョン 1.0.0-rc01

2021 年 7 月 1 日

androidx.compose.animation:animation:1.0.0-rc01androidx.compose.animation:animation-core:1.0.0-rc01 がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください

バグの修正

  • InfiniteAnimationPolicyandroidx.compose.ui:ui に移動しました(I5eb09b/160602714

バージョン 1.0.0-beta09

2021 年 6 月 16 日

androidx.compose.animation:animation:1.0.0-beta09androidx.compose.animation:animation-core:1.0.0-beta09 がリリースされました。バージョン 1.0.0-beta09 に含まれる commit については、こちらをご覧ください

API の変更

  • 新しい AnimatedContent Composable は、新しいターゲット コンテンツが開始し初期のコンテンツが終了すると、カスタマイズ可能な ContentTransform を使用してコンテンツの変更を管理します。開始遷移と終了遷移をさまざまに組み合わせて、カスタマイズしたデザインを作成できます。コンテンツ変換の一部として、AnimatedContent は受信コンテンツに合わせてサイズを自動的に切り替えます。(I2c3df
  • ManualFrameClock を削除しました。アニメーションを制御する必要がある場合は、代わりに composeTestRule.mainClock を使用してください。(I3c3e8b/189951065

プロファイル ルールの追加

このリリースでは、以下の compose モジュールにプロファイル ルールが追加されました。(I14ed6

  • androidx.compose.animation
  • androidx.compose.animation-core
  • androidx.compose.foundation
  • androidx.compose.foundation-layout
  • androidx.compose.material
  • androidx.compose.material-ripple
  • androidx.compose.runtime
  • androidx.compose.ui
  • androidx.compose.ui.geometry
  • androidx.compose.ui.graphics
  • androidx.compose.ui.text
  • androidx.compose.ui.text
  • androidx.compose.ui.unit
  • androidx.compose.ui.util

プロファイル ルールとは

  • ライブラリのプロファイル ルールは、src/main または同等のディレクトリにあるテキスト ファイル baseline-prof.txt で指定します。このファイルでは、1 行に 1 つずつルールを指定します。ここでのルールは、ライブラリ内のメソッドまたはクラスと合致するパターンです。ルールの構文は、人が読める ART プロファイル形式のスーパーセットで、adb shell profman --dump-classes-and-methods ... を使用する際に使用されます。ルールは、メソッドまたはクラスをターゲットとする 2 つの形式のいずれかを使用します。

  • メソッドルールのパターンは次のようになります。

    <FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
    
  • クラスルールのパターンは次のようになります。

    <CLASS_DESCRIPTOR>
    
  • 上記の <FLAGS> には、このメソッドに「ホット」、「起動」、または「起動後」のフラグを付ける場合にそれぞれ文字 HSP(1 つまたは複数)を入力します。

  • <CLASS_DESCRIPTOR> は、ターゲットとなるメソッドが属するクラスの記述子です。たとえば、クラス androidx.compose.runtime.SlotTable の記述子は、Landroidx/compose/runtime/SlotTable; です。

  • <METHOD_SIGNATURE> はメソッドのシグネチャで、メソッドの名前、パラメータの型、戻り値の型を含みます。たとえば、LayoutNode のメソッド fun isPlaced(): Boolean のシグネチャは、isPlaced()Z です。

  • 1 つのルールに複数のメソッドまたはクラスを含める場合は、これらのパターンにワイルドカード(***?)を使用できます。

ルールの機能

  • フラグ H が付いているメソッドは、このメソッドが「ホット」メソッドであり、事前コンパイルが必要であることを示します。

  • S フラグが付いているメソッドは、このメソッドが起動時に呼び出されるメソッドであり、コンパイルのコストと起動時にメソッドを解釈するコストを回避するために事前コンパイルが必要であることを示します。

  • P フラグが付いているメソッドは、このメソッドが起動後に呼び出されることを示します。

  • このファイルに存在するクラスは、このクラスが起動時に使用されるクラスであり、クラス読み込みのコストを回避するためにヒープで事前割り当てする必要があることを示しています。

ルールの仕組み

  • ライブラリは、AAR アーティファクトにパッケージするルールを定義できます。それらのアーティファクトを含むアプリがビルドされると、ルールが結合されます。結合されたルールは、アプリに固有のコンパクト バイナリ ART プロファイルをビルドするために使用されます。ART では、アプリがデバイスにインストールされた際にこのプロファイルを利用して、アプリの特定の部分を事前にコンパイルし、アプリのパフォーマンス(特に初回実行時)を改善できます。なお、これはデバッグ可能なアプリには影響しません。

バージョン 1.0.0-beta08

2021 年 6 月 2 日

androidx.compose.animation:animation:1.0.0-beta08androidx.compose.animation:animation-core:1.0.0-beta08 がリリースされました。バージョン 1.0.0-beta08 に含まれる commit については、こちらをご覧ください

バグの修正

  • detectDragGesuresdetectVerticalGesturesdetectHorizontalGestures が位置変更を自動的に使用するようになり、onDrag コールバックで change.consumePositionChange を呼び出す必要がなくなりました(I42fc4b/185096350b/187320697
  • Modifier.onGloballyPositioned() は、すべての修飾子を適用した後のレイアウト座標ではなく、修飾子チェーン内のこの修飾子の座標を報告するように変更されました。これにより、報告される座標が、修飾子の順序の影響を受けるようになりました。(Ieb67db/177926591

バージョン 1.0.0-beta07

2021 年 5 月 18 日

androidx.compose.animation:animation:1.0.0-beta07androidx.compose.animation:animation-core:1.0.0-beta07 がリリースされました。バージョン 1.0.0-beta07 に含まれる commit については、こちらをご覧ください

API の変更

  • MutableTransitionState で指定される可視設定をサポートする新しい AnimatedVisibility API。これにより、currentStateisIdle から AnimatedVisibility の外部でアニメーションの状態を監視できます。
    • Transition における新しい子遷移のサポート
    • AnimationScope.transition を使用して AnimatedVisibility 内のカスタム exit/enter 遷移アニメーションをサポート
    • AnimatedVisibility のすべての子からアクセスできる animateEnterExit 修飾子を追加
    • initiallyVisible パラメータをとる AnimatedVisibility API は非推奨になりました(I702f3

バージョン 1.0.0-beta06

2021 年 5 月 5 日

androidx.compose.animation:animation:1.0.0-beta06androidx.compose.animation:animation-core:1.0.0-beta06 がリリースされました。バージョン 1.0.0-beta06 に含まれる commit については、こちらをご覧ください

バージョン 1.0.0-beta05

2021 年 4 月 21 日

androidx.compose.animation:animation:1.0.0-beta05androidx.compose.animation:animation-core:1.0.0-beta05 がリリースされました。バージョン 1.0.0-beta05 に含まれる commit については、こちらをご覧ください。

バグの修正

  • ui-test-manifest と ui-tooling-data の AndroidManifest ファイルに、Android 12 との互換性が備わりました。(I6f9deb/184718994

バージョン 1.0.0-beta04

2021 年 4 月 7 日

androidx.compose.animation:animation:1.0.0-beta04androidx.compose.animation:animation-core:1.0.0-beta04 がリリースされました。バージョン 1.0.0-beta04 に含まれる commit については、こちらをご覧ください

API の変更

  • RowScopeColumnScopeBoxScopeBoxWithConstraintsScope のパブリック インスタンスが削除されました。(I4e83eb/181869067

バージョン 1.0.0-beta03

2021 年 3 月 24 日

androidx.compose.animation:animation:1.0.0-beta03androidx.compose.animation:animation-core:1.0.0-beta03 がリリースされました。バージョン 1.0.0-beta03 に含まれる commit については、こちらをご覧ください

バージョン 1.0.0-beta02

2021 年 3 月 10 日

androidx.compose.animation:animation:1.0.0-beta02androidx.compose.animation:animation-core:1.0.0-beta02 がリリースされました。バージョン 1.0.0-beta02 に含まれる commit については、こちらをご覧ください。

バグの修正

  • 試験運用版 API の一般使用に対する制限を適用します(I6aa29b/174531520

バージョン 1.0.0-beta01

2021 年 2 月 24 日

androidx.compose.animation:animation:1.0.0-beta01androidx.compose.animation:animation-core:1.0.0-beta01 がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。

これは、Compose 1.0.0 ベータ版の最初のリリースです。

API の変更

  • InteractionState[Mutable]InteractionSource に置き換えました。
    • インターフェースは、操作イベントを送受信する役割を担います。
    • interactionState = remember { InteractionState() }ButtonModifier.clickable() などのコンポーネントに渡す代わりに、interactionSource = remember { MutableInteractionSource() } を使用します。
    • Interaction.Pressed in interactionState ではなく、InteractionSource で拡張関数(InteractionSource.collectIsPressedAsState() など)を使用する必要があります。
    • 複雑なユースケースの場合は、InteractionSource.interactions を使用して操作フローを確認できます。詳しくは、InteractionSource のドキュメントとサンプルをご覧ください。
    • I85965b/152525426b/171913923b/171710801b/174852378
  • smoothScrollBy メソッドと scrollBy メソッドのパッケージを androidx.compose.foundation.gestures.* に変更しました(I3f7c1b/175294473
  • サイズ修飾子の名前を変更しました。Modifier.width/height/size の名前を requiredWidth/requiredHeight/requiredSize に変更しました。Modifier.preferredWidth/preferredHeight/preferredSize の名前を width/height/size に変更しました。(I5b414
  • Orientation を foundation パッケージに移動しました。VelocirtTracker を ui.gesture から ui.input.pointer に移動しました。(Iff4a8b/175294473
  • AnimationClockObservable とサブクラスを削除しました。AnimatedFloat を削除しました。(Icde52b/177457083
  • Modifier.draggable は、単純なラムダの代わりに、DraggableState を受け入れるようになりました。rememberDraggableState { delta -> } を介して状態を作成し、以前と同じ動作を実現できます(Ica70fb/175294473)。
  • animate、animatedValue、AnimatedValue API を削除しました(If27bcb/177457083
  • AnimationEndReason.Interruped を削除しました。アニメーションが中断されると、CancellationException がスローされるようになります。(I2cbbcb/179695417
  • TargetAnimation API を削除しました。(If47d1b/177457083

バージョン 1.0.0-alpha12

2021 年 2 月 10 日

androidx.compose.animation:animation:1.0.0-alpha12androidx.compose.animation:animation-core:1.0.0-alpha12 がリリースされました。バージョン 1.0.0-alpha12 に含まれる commit については、こちらをご覧ください

API の変更

  • Modifier.pointerInput は、ポインタ入力検出コルーチンを新しい依存関係で再開するタイミングを示す remember キーを必要とするようになりました。(I849cd
  • Bounds の名前を DpRect に変更しました。(I4b32a
  • AnimationSpec のパラメータ名を、アニメーション システム全体で animationSpec に統一しました。また、EnterTransition と ExitTransition については、FiniteAnimationSpec を受け入れるようにしています。(Ie47c5b/177457083
  • Animatable.snapTo と Animatable.stop が suspend 関数になりました。(If4288
  • 以前 state { 0 } composable を削除して remember { mutableStateOf(0) } のような使い方を推奨するようになったのと同様、savedInstanceState { 0 } composable を削除する予定です。代わりに rememberSaveable { mutableStateOf(0) } の使用を推奨します。これにより、MutableState 内で使用されるタイプが Bundle に保存可能な場合は、自動的に保存および復元が行われるようになります。これまでカスタムのセーバー オブジェクトを渡していた場合は、stateSaver パラメータを含む rememberSaveable の新しいオーバーロードを使用する必要があります。使い方は、val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) } のようになります。(Ib4c26b/177338004
  • アニメーション システムの他の部分との一貫性を高めるため、Crossfade のメソッド シグネチャを更新しました。(Ib05edb/177457083
  • rememberSavedInstanceState() の名前を rememberSaveable() に変更して androidx.compose.runtime.saveable パッケージに移動しました。(I1366eb/177338004
  • RestorableStateHolder の名前を SaveableStateHolder に変更して androidx.compose.runtime.saveable パッケージに移動しました。内部メソッド RestorableStateProvider の名前を SaveableStateProvider に変更しました。汎用型が削除されたため、Any をキーとして渡すことができます。試験運用版のアノテーションは不要になりました。(I0902eb/174598702
  • アニメーション システムの他の部分と一貫性を持たせるため、Modifier.animateContentSize API を更新しました。(I0bf75b/177457083
  • AnimatedValue/Float が非推奨になりました。代わりに Animatable を使用してください。(I71345b/177457083
  • tapGestureFilter、doubleTapGestureFilter、longPressGestureFilter、pressIndicaitonGestureFilter が非推奨になりました。代わりに、Modifier.clickable または Modifier.pointerInput を detectTapGestures 関数とともに使用してください。(I6baf9b/175294473
  • 無限アニメーションに適用される InfiniteAnimationPolicy コルーチン コンテキスト要素を導入しました。ComposeTestRule を使用してテストを実行する場合を除き、デフォルトではポリシーはインストールされません。(I50ec4b/151940543
  • destructuring と copy() メソッドを、これらをほとんど使用しないクラスから削除しました。(I26702b/178659281
  • アニメーションの再生時間をナノ秒単位に統一しました。(If776a
  • compose:runtime-dispatch アーティファクトは非推奨になりました。 MonotonicFrameClock は compose:runtime に、また AndroidUiDispatcher は compose:ui に含まれるようになりました。(Ib5c36
  • アニメーションが無限であるかどうかを示す Animation.isInfiniteVectorizedAnimationSpec.isInfinite を追加しました。これは、アニメーションの実装において、無限アニメーションに特別な処理を行う場合に利用できます。たとえば、「残り時間」の表示を通常と変えたり、テストでアイドル状態を待ち続けることを避けるためにアニメーションをキャンセルしたりできます。(Iebb05b/151940543
  • アニメーション時間の型には、Uptime ではなく Long を使用します。(Ie3aa7b/177420019

バージョン 1.0.0-alpha11

2021 年 1 月 28 日

androidx.compose.animation:animation:1.0.0-alpha11androidx.compose.animation:animation-core:1.0.0-alpha11 がリリースされました。バージョン 1.0.0-alpha11 に含まれる commit については、こちらをご覧ください

API の変更

  • TransitionDefinition ベースの Transition が非推奨になりました。(I0ac57
  • ツールに表示される Transition と子のアニメーション用のラベル フィールドを追加しました。(I619fb
  • animateAsState が animateFooAsState になりました。ここで Foo はアニメーション化される変数の型です(Float、Dp、Offset など)。(Ie7e25
  • 子のアニメーションをいくつでも実行できる、新しい InfiniteTransition。(I1da81
  • Material のステートフル パラメータ インターフェースを変更して、State<T> を返す @Composable 関数を提供するようにしました。Animatable.asState() を追加しました。これにより、Animatable から State への変換が簡単にできるようになりました。また、animateElevation を、Animatable の suspend 拡張機能に変更しました。(If613c

バグの修正

  • onCommit、onDispose、onActive を非推奨にし、SideEffect API と DisposableEffect API に置き換えました。(If760e
  • updateTransition の Initial State がサポートされるようになりました。(Ifd51d
  • 画像とアイコンにコンテンツ説明パラメータを追加しました。これは、ユーザー補助サービスに説明を提供するために使用されます。(I2ac4c
  • invalidate と compositionReference() を非推奨にし、それぞれ currentRecomposeScope と rememberCompositionReference に置き換えました。(I583a8
  • Duration と Uptime を Long ミリ秒に置き換えます。これにより、これらのクラスに対するポインタ入力の依存関係が削除されます。(Ia33b2b/175142755b/177420019
  • clickable、toggleable、selectable が、コンポジションの外部でも作成できるようになりました(I0a130b/172938345b/175294473)。
  • イージングが機能インターフェースに変更されました。(Ib14e5
  • LazyColumn / LazyRow / LazyVerticalGrid のスコープのための新しい items(count: Int) ファクトリ メソッド。items(items: List)itemsIndexed(items: List) が拡張関数になりました。そのため、使用するときには手動でインポートする必要があります。Arrays の新しい拡張オーバーロード: items(items: Array) と itemsIndexed(Array)(I803fcb/175562574
  • テストでは TestCoroutineDispatcher を利用します。(I532b6
  • PointerInputData を削除し、PointerInputData のフィールドをすべて利用できるように PointerInputChange を変更しました。PointerInputEvent と PointerInputEventData は公開 API で使用されることがないため、内部化しました。(Ifff97b/175142755

バージョン 1.0.0-alpha10

2021 年 1 月 13 日

androidx.compose.animation:animation:1.0.0-alpha10androidx.compose.animation:animation-core:1.0.0-alpha10 がリリースされました。バージョン 1.0.0-alpha10 に含まれる commit については、こちらをご覧ください。

API の変更

  • Velocity がコンポーネント部品と数学演算を持つように変更しました。(Ib0447
  • 類似する試験運用版の API アノテーションとの整合性を保つため、@ExperimentalTesting の名前を @ExperimentalTestApi に変更しました。(Ia4502b/171464963
  • Position の名前を DpOffset に変更し、getDistance() を削除しました。(Ib2dfd
  • Any.identityHashCode() 公開 API を削除しました。(I025d7

バグの修正

  • 新しいコルーチン ベースの API Animatable が、アニメーション間の相互排他的性を保証します。新しい DecayAnimationSpec で多次元の消滅アニメーションをサポートしました。(I820f2b/168014930
  • animate()animateAsState() に置き換えられました。T ではなく State<T> を返します。これにより、State 値が読み取られる範囲に無効化スコープを絞り込めるため、パフォーマンスが向上します。(Ib179e

バージョン 1.0.0-alpha09

2020 年 12 月 16 日

androidx.compose.animation:animation:1.0.0-alpha09androidx.compose.animation:animation-core:1.0.0-alpha09 がリリースされました。バージョン 1.0.0-alpha09 に含まれる commit については、こちらをご覧ください。

API の変更

  • Dp.VectorConverter、Position.VectorConverter などを animation-core に移動し、古い VectorConveters を非推奨にしました。(If0c4b
  • まったく新しい Transition API セットを導入しました。使いやすさが向上し、動的に追加されたアニメーションと、動的に計算されたアニメーション ターゲットがサポートされます。この API は、TransitionDefinition ベースの API と簡単に区別できるように試験運用版としてマークされています。(Ia7fe3

バグの修正

  • オフセット修飾子のラムダが Float ではなく IntOffset を返すようになりました。(Ic9ee5b/174137212b/174146755
  • LazyColumnFor、LazyRowFor、LazyColumnForIndexed、LazyRowForIndexed を非推奨にしました。代わりに LazyColumn と LazyRow を使用してください。(I5b48c
  • 一時停止ポインタ入力 API について、HandlePointerInputScope の名前を AwaitPointerEventScope に変更し、handlePointerInput() の名前を awaitPointerEventScope() に変更しました。(Idf0a1b/175142755
  • InfiniteRepeatableSpec を作成するための新しい infiniteRepeatable 関数(I668e5
  • ExperimentalPointerInput アノテーションを削除しました(Ia7a24

バージョン 1.0.0-alpha08

2020 年 12 月 2 日

androidx.compose.animation:animation:1.0.0-alpha08androidx.compose.animation:animation-core:1.0.0-alpha08 がリリースされました。バージョン 1.0.0-alpha08 に含まれる commit については、こちらをご覧ください。

API の変更

  • Compose のガイドラインとの整合性を確認するため、コンポーズ可能なラムダ パラメータの名前と位置に対する lint チェックを追加しました。また、lint チェックおよびガイダンスに従って、後置ラムダの名前として children を使用する一部の API を content に移行しました。(Iec48e
  • 以前に非推奨になっていた API が削除されました。
    • Modifier.onPositioned が削除されました。Modifier.onGloballyPositioned を使用してください。
    • Modifier.onDraw が削除されました。Modifier.onDrawBehind を使用してください。
    • Modifier.plus が削除されました。Modifier.then を使用してください。
    • Color.Unset が削除されました。Color.Unspecified を使用してください。
    • PxBounds クラスが削除されました。代わりに Rect を使用してください。
    • Ie9d02b/172562222
  • TestAnimationClock が MonotonicFrameClock によって作動するようにするオプションを一時的に追加しました。(I1403bb/173402197

バグの修正

  • Modifier.drawLayer の名前を Modifier.graphicsLayer に変更しました。また、API 評議会のフィードバックに従って、関連するクラスを GraphicsLayer に更新しました。(I0bd29b/173834241
  • Modifier.scale API / Modifier.rotate API を drawLayer 用のコンビニエンス API として追加しました。
    • Modifier.drawOpacity の名前を Modifier.alpha に変更しました。
    • Modifier.drawShadow の名前を Modifier.Shadow に変更しました。(I264cab/173208140
  • PointerInputData の uptime フィールドと position フィールドを null 値非許容にしました。(Id468a
  • offsetPx 修飾子の名前が offset に変更されました。現在は、State ではなくラムダ パラメータを取得します。(Ic3021b/173594846
  • コルーチンでアニメーションを実行するための新しい API を追加しました(Ied662
  • Ambient という接尾辞を持つ Ambient が非推奨になり、その他の Ambient と Compose API のガイドラインに沿って、Ambient という接頭辞を持つ新しいプロパティに置き換えられました。(I33440
  • テストの時間制御(TestAnimationClock とその使用方法)が試験運用版になりました。(I6ef86b/171378521
  • 古い ui-test モジュールとそのスタブを削除しました。(I3a7cb
  • RestorableStateHolder.withRestorableState 関数が RestorableStateProvider という名前に変更されました。(I66640
  • Alignment インターフェースが更新され、機能するようになりました。(I46a07b/172311734

バージョン 1.0.0-alpha07

2020 年 11 月 11 日

androidx.compose.animation:animation:1.0.0-alpha07androidx.compose.animation:animation-core:1.0.0-alpha07 がリリースされました。バージョン 1.0.0-alpha07 に含まれる commit については、こちらをご覧ください

バグの修正

  • 基本の AmbientTextStyle、ProvideTextStyle、AmbientContentColor が非推奨になりました。代わりに、マテリアル ライブラリにある新バージョンを使用してください。マテリアル以外のアプリの場合は、独自のコンポーネントで使用できる、独自のデザイン システム固有のテーマ設定アンビエントを代わりに作成する必要があります。(I74accb/172067770
  • foundation.Text が非推奨になり、material.Text に置き換えられました。テーマの値を使用しない、基本的で独自性のないテキスト API については、androidx.compose.foundation.BasicText をご覧ください。(If64cb
  • MeasureResult を MeasureScope の外に移動しました。(Ibf96db/171184002
  • いくつかのレイアウト関連シンボルを androidx.compose.ui から androidx.compose.layout.ui に移動しました。(I0fa98b/170475424

バージョン 1.0.0-alpha06

2020 年 10 月 28 日

androidx.compose.animation:animation:1.0.0-alpha06androidx.compose.animation:animation-core:1.0.0-alpha06 がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください

API の変更

  • ComposeTestRule で遷移が有効になりました。ComposeTestRule から、カーソルの点滅を有効にするオプションを削除しました。(If0de3

バージョン 1.0.0-alpha05

2020 年 10 月 14 日

androidx.compose.animation:animation:1.0.0-alpha05androidx.compose.animation:animation-core:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください

API の変更

  • 新しいアニメーション インターフェースとサブクラス: これらのクラスには、アニメーションの開始条件と終了条件が格納されます。そのため、値と速度のクエリは、プレイ時間中しか実施できません。(Ie95bdb/163329867

バグの修正

  • OnPositionedModifier が OnGloballyPositionedModifier という名前に、onPositioned() が onGloballyPositioned() という名前に変更されました。(I587e8b/169083903
  • contentColor() API と currentTextStyle() API が非推奨になり、それぞれ AmbientContentColor アンビエントと AmbientTextStyle アンビエントに置き換えられました。他のアンビエントと同様、アンビエント プロパティで .current を使用する方法で現在の値にアクセスできるようになりました。これは、同じことを行う方法が複数にならないよう、一貫性を確保するために加えられた変更です。また、以下のように、目的を適切に表すために一部のアンビエント プロパティの名前が変更されました。

    • ContentColorAmbient -> AmbientContentColor
    • TextStyleAmbient -> AmbientTextStyle
    • IndicationAmbient -> AmbientIndication
    • EmphasisAmbient -> AmbientEmphasisLevels
    • RippleThemeAmbient -> AmbientRippleTheme(I37b6d

バージョン 1.0.0-alpha04

2020 年 10 月 1 日

androidx.compose.animation:animation:1.0.0-alpha04androidx.compose.animation:animation-core:1.0.0-alpha04 がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください

API の変更

  • rootAnimationClockFactory、transitionsEnabled、blinkingCursorEnabled、textInputServiceFactory を @VisibleForTesting でアノテーションし、内部 API 化して kdoc を非表示にしました。(I554ebb/168308412

バグの修正

  • グラフィック API を多数更新しました。
    • スケール変換 API と回転変換 API を更新しました。これにより、DrawScope と DrawTransform の x 座標と y 座標に 2 つの float パラメータを使用してピボット座標を別個に示すのではなく、単一の Offset パラメータを使用するようにしました。
    • Rect.expandToInclude メソッドと Rect.join メソッドを削除しました。
    • 楕円に加えて長円を表示するように Radius のドキュメントを更新しました。
    • インライン Radius クラスのパブリック コンストラクタを直接呼び出すのではなく、関数コンストラクタを通じて Radius オブジェクトをインスタンス化する必要があることをドキュメントに記載しました。
    • topRight、bottomRight、bottomCenter などを照会するための RoundRect API を削除しました。
    • Rect.shift が非推奨になり、Rect.translate に置き換えられました。
    • RoundRect.grow API と Rect.shrink API を削除しました。
    • RoundRect.outerRect の名前を Rect.boundingRect に変更しました。
    • RoundRect.middleRect/tallMiddleRect/wideMiddleRect と Rect.isStadium メソッドを削除しました。
    • RoundRect.longestSide の名前を RoundRect.maxDimension に変更しました。
    • RoundRect.shortestSide の名前を RoundRect.minDimension に変更しました。
    • RoundRect.center は、関数ではなくプロパティになりました。
    • RoundRect コンストラクタを更新し、x/y 半径の値の個々のパラメータではなく Radius プロパティを使用するようにしました。
    • 原点が(0,0)の長方形であると仮定していた Size API を削除しました。
    • Radius に記述解除 API を追加しました。
    • さまざまな RoundRect 拡張関数をプロパティに移行しました。
    • I8f5c7b/168762961
  • foundation.Box は非推奨になりました。代わりに foundation.layout.Box を使用してください。(Ie5950b/167680279
  • Stack が Box に名前変更されました。compose.foundation.layout にある新しい Box を優先して、既存の Box は非推奨になります。Box の子が複数ある場合、新しい Box は子を互いに重ね合わせるように動作します。これは、Column と同じように動作していた以前の Box とは異なります。(I94893b/167680279
  • Box 装飾パラメータが非推奨になりました。Box に装飾やパディングを付ける場合は、代わりに修飾子を使用します。(Modifier.background、Modifier.border、Modifier.padding)(Ibae92b/167680279
  • レイアウト スコープのコンテンツ(RowScope の alignWithSiblings など)を静的にインポートできないようにしました。代わりに明示的なスコープ(with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) })を使用してください。(I216beb/166760797

バージョン 1.0.0-alpha03

2020 年 9 月 16 日

androidx.compose.animation:animation:1.0.0-alpha03androidx.compose.animation:animation-core:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください

バグの修正

  • レイアウト API の gravity の用法で、名前が align または alignment に一貫して変更されました。(I2421ab/164077038

バージョン 1.0.0-alpha02

2020 年 9 月 2 日

androidx.compose.animation:animation:1.0.0-alpha02androidx.compose.animation:animation-core:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください

API の変更

  • 特定のクロックのフレームを待機しているかどうかを確認するため、ManualFrameClock.hasAwaiters を追加しました。runWithManualClock は ManualFrameClock を必要とするテスト runBlocking に代わるものです。TestUiDispatcher.Main はテストのメイン UI ディスパッチャへのアクセスを容易にします。

    次に例を示します。

    @Test
    fun myTest() = runWithManualClock { clock ->
        // set some compose content
        withContext(TestUiDispatcher.Main) {
            clock.advanceClock(1000L)
        }
        if (clock.hasAwaiters) {
            println("The clock has awaiters")
        } else {
            println("The clock has no more awaiters")
        }
    }
    

    I0a85bb/161247083

バグの修正

  • onPrecommit は非推奨です。onCommit で onPrecommit の動作がサポートされるようになりました。

    onCommit と onActive は、次の Choreographer フレームの開始時点ではなく、構成要素の変更が commit された同じ Choreographer フレームで実行されるようになりました。(I70403

バージョン 1.0.0-alpha01

2020 年 8 月 26 日

androidx.compose.animation:animation:1.0.0-alpha01androidx.compose.animation:animation-core:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください

バージョン 0.1.0-dev

バージョン 0.1.0-dev17

2020 年 8 月 19 日

androidx.compose.animation:animation:0.1.0-dev17androidx.compose.animation:animation-core:0.1.0-dev17 がリリースされました。バージョン 0.1.0-dev17 に含まれる commit については、こちらをご覧ください

新機能

API の変更

  • オフセットがインライン クラスになりました。(Iaec70
  • IntOffset がインライン クラスになりました。(Iac0bf
  • IntSize がインライン クラスになりました。(I2bf42
  • AnimatedVisibilty composable は、子コンテンツの表示と非表示をアニメーション化します。

    AnimatedVisibilty composable と連携して 3 種類の表示と非表示のアニメーション(コンテンツのフェード、スライド、拡大 / 縮小)を提供するため、EnterTransition と ExitTransition が導入されました。さまざまな種類のアニメーションを組み合わせて、より特別なデザインを実現できます。(Idda11

  • PxBounds を非推奨にし、Rect に置き換えました。PxBounds のすべての使用を更新して Rect に置き換え、移行に役立つ適切な非推奨およびアノテーションへの置き換えを追加しました。(I37038b/162627058

バグの修正

  • PlacementScope.placeAbsolute() の名前が PlacementScope.place() に変更され、以前の PlacementScope.place() の名前が PlacementScope.placeRelative() に変更されました。その結果、PlacementScope.place() メソッドは、右から左(RTL)へのコンテキストで、自動的に位置をミラーリングしなくなります。必要な場合は、代わりに PlacementScope.placeRelative() を使用してください。(I873acb/162916675
  • 明確化のため、state { ... } コンポーザブルを非推奨にし、remember { mutableStateOf(...) } の明示的な呼び出しに置き換えました。これにより、状態管理の API サーフェス全般とコンセプトの数が縮小され、クラス プロパティ委任の by mutableStateOf() パターンと一致するようになります。(Ia5727

バージョン 0.1.0-dev16

2020 年 8 月 5 日

androidx.compose.animation:animation:0.1.0-dev16androidx.compose.animation:animation-core:0.1.0-dev16 がリリースされました。バージョン 0.1.0-dev16 に含まれる commit については、こちらをご覧ください

API の変更

  • 組み込みの単位を変換するための組み込みのベクター コンバーターに Foo.VectorConverter を介してアクセスできるようになりました。例: Dp.VectorConverterColor.VectorConverterFloat.VectorConverter など。(I3e273
  • サイズ変更アニメーションが終了するとき、アニメーションの開始 / 終了サイズとともにリスナーに通知されるように、Modifier.animateContentSize() で終了リスナーがサポートされます。(I277b2
  • 子修飾子のレイアウト サイズの変化をアニメーション化する新しい animateContentSize 修飾子。(Ieffdc
  • MonotonicFrameAnimationClock を追加して、MonotonicFrameClock を AnimationClockObservable として使用できるようにしました。これにより、新しいコルーチン ベースのクロックと、従来のコールバック ベースのクロックを使用している API とのギャップが解消されました。

    ManualAnimationClock に相当する MonotonicFrameClockManualFrameClock になりました。(I111c7b/161247083

バグの修正

  • 右から左(RTL)をサポートする API が更新されました。レイアウト方向の読み取りと変更に使用できる LayoutDirectionAmbient が追加されました。Modifier.rtl と Modifier.ltr が削除されました。(I080b3
  • transitionDefinition にはタイプ T を明示的に指定する必要があります。(I1aded
  • foundation.shape.corner パッケージが foundation.share にフラット化されました。(I46491b/161887429
  • Modifier.plus が非推奨になりました。代わりに Modifier.then を使用してください。then により、順序が明確化され、Modifier.padding().background() + anotherModifier と書いてチェーンを分断し可読性を下げることが防止されます。(Iedd58b/161529964
  • Modifier.drawBackground の名前が Modifier.background に変更されました。(I13677

バージョン 0.1.0-dev15

2020 年 7 月 22 日

androidx.compose.animation:animation:0.1.0-dev15androidx.compose.animation:animation-core:0.1.0-dev15 がリリースされました。バージョン 0.1.0-dev15 に含まれる commit については、こちらをご覧ください

依存関係の更新

  • 0.1.0-dev15 バージョンの Compose を使用するには、上記の依存関係の宣言で示されている新しいコード スニペットに従って、依存関係を更新する必要があります。

API の変更

  • Transition API が変更され、子に TransitionState を渡すのでなく、TransitionState を返すようになりました。これにより、この API と animate() API の一貫性が向上します。(I24e38
  • クロスフェード用の修飾子パラメータが追加されました。(I87cfeb/159706180
  • 静的アニメーション仕様のコンセプトを明確化するため、最上位レベルの API で AnimationBuilder ではなく AnimationSpec を使用するようになりました。
    • tween や spring などの AnimationSpec の作成に関するラムダ要件を削除することにより、遷移 DSL を改善しました。代わりに、それらはコンストラクタのパラメータを直接受け取ります。
    • AnimationSpec の使いやすさを全面的に改善し、ビルダーに依存するのではなくコンストラクタを利用するようにしました。
    • KeyFrames と Tween の期間と遅延を Int に変更しました。これにより、(Long と Int の両方をサポートするための)不要な型キャストとメソッドのオーバーロードがなくなります。(Ica0b4
  • IntPx の使用を Int に置き換えました。IntPxPosition を IntOffset に置き換えました。IntPxSize を IntSize に置き換えました。(Ib7b44
  • サイズ設定情報を示す際に使用するクラスの数を整理統合するため、PxSize ではなく Size クラスの使用を標準化しました。これにより、インライン クラスは long 値を利用して、float 値で表される幅と高さを示す 2 つの float 値をパックできるようになります。(Ic0191
  • 位置情報を示す際に使用するクラスの数を整理統合するため、PxPosition ではなく Offset クラスの使用を標準化しました。これにより、インライン クラスは long 値を利用して、float 値で表される x オフセットと y オフセットを示す 2 つの float 値をパックできるようになります。(I3ad98
  • ピクセル パラメータに関して Dp とプリミティブ型だけに依存するように大規模なリファクタリングを行う一環として、各種の compose クラス内で Px クラスを使用しないように変更しました。(I086f4
  • Dp、Px、Size、Position、Bounds、PxPosition、PxSize、PxBounds、IntPx、IntPxSize、IntPxPosition、IntPxBounds、AnimationVector に対する animate() のサポートを追加しました。(Ib7518
  • クロスフェードでオプションの AnimationBuilder パラメータを使用して、アニメーションを構成できるようになりました。(I6d6e0
  • API 内のすべての null 値許容型の Color が null 値非許容型に置き換えられ、null の代わりに Color.Unset が使用されるようになりました。(Iabaa7
  • ValueHolder クラスを削除しました。サブクラスで値の更新を監視できるよう、アニメーション値のフィールドを抽象化するために、AnimatedValue クラスと AnimatedFloat クラスを再構成しました。
    • AnimatedValue、AnimatedFloat などで使用するモデルクラスを追加しました。
    • 値を更新する間にアニメーションを表示するための、軽量の新しい @Composable API セットを追加しました。(I79530
  • アンビエント API を大幅に変更しました。詳細については、ログと Ambient<T> のドキュメントをご覧ください。(I4c7eeb/143769776
  • 新しいリピートモード(リバース)が追加されました。このモードでは、RepeatableSpec または VectorizedRepeatableSpec でアニメーションが繰り返されると、前回の繰り返しが逆再生されます。(Ibe0f5
  • ManualAnimationClock への API の追加: hasObservers: Boolean とコンストラクタ パラメータ dispatchOnSubscribe: Boolean。(Iaa134
  • AnimatedFloat で最小 / 最大境界を取得するための API が追加されました。(Icd9cc

バグの修正

  • runOnIdleCompose の名前が runOnIdle に変更されました。(I83607
  • いくつかのテスト API の名前がより直感的にわかりやすいものになりました。findXYZ API という名前はすべて onNodeXYZ に変更されました。doXYZ API という名前はすべて performXYZ に変更されました。(I7f164
  • 低レベルのステートレス アニメーション API が導入されました。(I63bf7
  • Recompose composable は、有用な抽象化ではなくなりました。ほとんどの場合、再コンポーズは、MutableState 割り当ての結果として生じます。それ以外の場合は、invalidate 関数を使用して、現在のスコープの再コンポーズをトリガーすることをおすすめします。(Ifc992
  • ピクセル パラメータに関して Dp とプリミティブ型だけに依存するように大規模なリファクタリングを行う一環として、各種の compose クラス内で Px クラスを使用しないように変更しました。Px クラス全体が削除されています。(I3ff33
  • ピクセル パラメータに関して Dp とプリミティブ型だけに依存するように大規模なリファクタリングを行う一環として、各種の compose クラス内で Px クラスを使用しないように変更しました。(Id3434
  • クロスフェードの初期値として null を使用できるようになりました。(Iad6a4b/155947711
  • ピクセル パラメータに関して Dp とプリミティブ型だけに依存するように大規模なリファクタリングを行う一環として、各種の compose クラス内で Px クラスを使用しないように変更しました。(I19d02
  • CanvasScope の実装を整理統合し、DrawScope と ContentDrawScope のみとしました。CanvasScope の名前を DrawScope に変更しました。DrawScope を更新して Density インターフェースを実装し、LayoutDirection を提供しました。ContentDrawScope の DrawScope サブクラスを削除しました。Painter と PainterModifier が更新され、RTL プロパティを自身で維持しなくなりました。これは DrawScope ですでに提供されているため、手動で提供する必要はありません。(I1798e
  • キャンバスを公開するハイレベルの Compose API を更新して、代わりに CanvasScope を公開するようにしました。これにより、ユーザーが独自の Paint オブジェクトを維持管理する必要がなくなります。引き続きキャンバスの利用が必要なユーザーは、drawCanvas 拡張メソッドを使用できます。このメソッドにより、対象のキャンバスに対して Draw コマンドを実行するコールバックが行われます。(I80afd
  • verticalGravity パラメータと horizontalGravity パラメータをそれぞれ Row と Column に追加しました。(I7dc5a
  • ui-text モジュールの名前が ui-text-core に変更されました。(I57dec
  • DrawModifier API の改善:
    • draw() のレシーバ スコープを ContentDrawScope にしました。
    • draw() のパラメータをすべて削除しました。
    • DrawScope に以前の CanvasScope と同じインターフェースを設定しました。
    • ContentDrawScope に drawContent() メソッドを追加しました。(Ibacedb/152919067
  • runOnIdleComposerunOnUiThread が ComposeTestRule のメソッドではなくグローバル関数になりました。(Icbe8f
  • [Mutable] State プロパティ デリゲート演算子が、Kotlin 1.4 のプロパティ デリゲート最適化に対応するため、拡張機能に移動されました。by state { ... } または by mutableStateOf(...) を引き続き使用するには、呼び出し元でインポートを追加する必要があります。(I5312c
  • ColoredRect が非推奨になりました。代わりに Box(Modifier.preferredSize(width, height).drawBackground(color)) を使用してください。(I499fab/152753731
  • 修飾子と演算子を工場出荷時の拡張機能に置き換えました。(I225e4
  • Center composable は非推奨になりました。LayoutSize.Fill + LayoutAlign.Center 修飾子に置き換えるか、適切な修飾子が適用された Box composable または Stack composable に置き換える必要があります。(Idf5e0
  • LayoutFlexible の名前を LayoutWeight に変更しました。このパラメータを補うために tight パラメータの名前を変更しました。(If4738
  • コンポーズ可能な関数 Opacity が drawOpaity 修飾子に置き換えられました。(I5fb62
  • AndroidComposeTestRule を使用するテストでは、構成のルートにアニメーション クロックが提供され、手動での一時停止、再開、詳細設定が可能になりました。(Id54c5
  • LayoutPadding 修飾子で右から左方向をサポートするようになりました。(I9e8da
  • Density と DensityScope が 1 つのインターフェースに統合されました。ambientDensity() ではなく、DensityAmbient.current を使用できるようになりました。withDensity(density) ではなく、with(density) だけになりました。(I11cb1
  • 以下のさまざまなインライン クラスタイプにコピーメソッドを追加しました。
    • Offset
    • サイズ
    • Radius
    • Motion
    • TransformOrigin
    • Size.copy コンパニオン オブジェクト メソッドを非推奨にし、インスタンス コピーメソッドに置き換えました。(Ife290b/159905651
  • androidx.compose.ViewComposer が androidx.ui.node.UiComposer に移動され、androidx.compose.Emittable が削除されました。これは ComponentNode と重複していました。androidx.compose.ViewAdapters が削除されました。サポート対象のユースケースではなくなりました。Compose.composeInto が非推奨になりました。代わりに setContent または setViewContent を使用してください。Compose.disposeComposition が非推奨になりました。代わりに、setContent が返す Compositiondispose メソッドを使用してください。androidx.compose.Compose.subcomposeInto は androidx.ui.core.subcomposeInto に移動されました。ComponentNode#emitInsertAt の名前が ComponentNode#insertAt に変更されました。ComponentNode#emitRemoveAt の名前が ComponentNode#removeAt に変更されました。ComponentNode#emitMode の名前が ComponentNode#move に変更されました。(Idef00