共计 754 个字符,预计需要花费 2 分钟才能阅读完成。
本篇文章次要讲的是,kotlin 协程在 ktx 上的扩大
lifecycle 扩大
对于 lifecycle 的扩大,曾经在 以前的文章中讲过了
次要的依赖
implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.2.0"
viewModel 扩大
对于 viewModel 的扩大,曾经在 以前的文章中讲过了
次要的依赖
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1'
liveData 扩大
次要的依赖
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.2.0'
官网链接如下:
具体应用举例如下:
class MainActivity : AppCompatActivity() {
val user: LiveData<String> = liveData {
// 模仿网络申请
var user = getUser()
if (user == "ok") {
// 模仿申请胜利
emit("ok")
} else {
// 模仿申请失败
emit("failed")
}
}
/**
* 模仿网络申请
*/
suspend fun getUser(): String {var ret = withContext(Dispatchers.Default) {"ok"}
return ret
}
override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
user.observe(this, {Log.d("yy--", "name1:$it")
})
}
}
正文完