📈【Jetpack】Android LiveData 存活資料 範例💻
LiveData 是在 Android 框架中推出的一個新技術,它可以讓開發者在 Android 中實現資料狀態和 UI 資料綁定。
它極大地改善了開發者與 UI 和資料之間的雙向綁定,並且具有很強的生命週期意識,這能讓開發者更輕鬆地構建並保持其 Android 應用程式的整個生命週期中的 UI。
LiveData 同時能憐愛開發者,讓他們只需要針對後端資料的更改做應對,而不用擔心重新載入和重繪整個 UI。
文章目錄
- LiveData ViewModel
- LiveData
- Developer Documents LiveData
1.LiveData ViewModel
Person.kt
data class Person(
val name: String = "",
val age: Int = 0
)
PersonViewModel.kt
class PersonViewModel : ViewModel() {
private val _name = MutableLiveData<String>()
val name: LiveData<String> = _name
private val _person = MutableLiveData<Person>()
val person: LiveData<Person> = _person
fun changeValue() {
_name.value = "wade"
_person.value = Person("wade", 25)
}
}
2.LiveData
build.gradle
dependencies {
def fragment_version = "1.5.5"
implementation "androidx.fragment:fragment-ktx:$fragment_version"
}
MainActivity.kt
class MainActivity : AppCompatActivity() {
private val viewModel: PersonViewModel by viewModels()
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
viewModel.name.observe(this) { name ->
Toast.makeText(this, name, Toast.LENGTH_SHORT).show()
}
viewModel.person.observe(this) { person ->
Toast.makeText(this, "{person.name}{person.age}", Toast.LENGTH_SHORT).show()
}
viewModel.changeValue()
}
}
3.Developer Documents LiveData
Open in Documents LiveData