mkurom / Kotlin_sampleApp

Kotlin勉強用
1 stars 0 forks source link

LiveDataメモ #24

Open mkurom opened 2 years ago

mkurom commented 2 years ago

C#でいうところのオブザーバーパターンのオブザーバブル

Androidのライフサイクルに対応 →アプリが起動(STARTED、RESUMED)しているときに更新が可能

LifecycleOwner

mkurom commented 2 years ago

LiveDataにアクセスするためにはvalueプロパティが必要

mkurom commented 2 years ago

●viewbinding  一方向バインディング(View -> ViewModel)  ビューをコードにバインディングして、コードからビューを操作することができるが、その逆はできない。  (ViewModelからViewを操作できる)

※公式の日本語と英語に違いがあるので注意

build.gradle

日本語 viewBinding { enabled = true }

英語 buildFeatures { viewBinding = true }

mkurom commented 2 years ago

●databinding

build.gradleを変更

buildFeatures {
    dataBinding = true
}

xmlの書き方がviewvindingと異なる

 タグで囲む必要がある

xmlにバインディング式を追加することにより、Activity や Fragmentで書いたオブザーバーは不要になる

view(xml)-> Activity or Fragment -> viewmodel -> model

view(xml) -> viewmodel -> model

になる

※->は参照方向