Jetpack Compose:staticCompositionLocalOfの違い

投稿日:  更新日:

CompositionLocalはUIツリーにローカルな変数を確保します。

その変数の参照キーはcompositionLocalOf関数(以降、Dynamic側と呼ぶ)によって返されるCompositionLocalインスタンスです。

このインスタンスを返す方法に、もう一つ、staticCompositionLocalOf関数(以降、Static側と呼ぶ)があります。

この両者の違いをまとめます。

※環境:Android Studio Giraffe | 2022.3.1 Patch 1
    Kotlin 1.8.10
    Compose Compiler 1.4.3
続きを読む

Jetpack Compose:UIツリーにローカルな変数の確保(CompositionLocal)

投稿日:  更新日:

CompositionLocalはUIツリーで発生する状態のバケツリレーを解決してくれます。

また、広く共有したい状態の定義にも適しています。例えば、「ツリーのある階層以下に対して」などと言った場合です。

CompositionLocalについて、まとめます。

※環境:Android Studio Giraffe | 2022.3.1 Patch 1
    Kotlin 1.8.10
    Compose Compiler 1.4.3
続きを読む

Jetpack Compose:再Composeのスケジューリング(mutableStateOf)

投稿日:  更新日:

再Composeのスケジューリング(mutableStateOf)はアプリのパフォーマンスに直結する動作です。

状態の保持(remember)に並び、Jetpack Composeの重要な技術の一つです。

今回は「再Composeのスケジューリング」について、まとめます。

※環境:Android Studio Giraffe | 2022.3.1 Patch 1
    Kotlin 1.8.10
    Compose Compiler 1.4.3
続きを読む

Jetpack Compose:再Composeを超えて状態の保持(remenber)

投稿日:  更新日:

状態の保持(remenber)はアプリの画面(UI)を制御・管理するために必要な動作です。

再Composeのスケジューリング(mutableStateOf)に並び、Jetpack Composeの重要な技術の一つです。

今回は「再Composeを超えて状態の保持」について、まとめます。

※環境:Android Studio Giraffe | 2022.3.1 Patch 1
    Kotlin 1.8.10
    Compose Compiler 1.4.3
続きを読む

Jetpack Compose:mutableStateOfはComposable関数ではない

投稿日:  更新日:

mutableStateOfはComposable関数ではありません。

ですので、Composable関数内にある必要はなく、どこでも記述できます。

Activityから表示の更新を発行する方法として使えそうです。

※環境:Android Studio Giraffe | 2022.3.1 Patch 1
    Kotlin 1.8.10
    Compose Compiler 1.4.3
続きを読む