【发布时间】:2021-09-30 11:46:26
【问题描述】:
我在 NewContactActivity 上添加一个新联系人,并在数据库上完成插入并关闭活动后,但这不会更新联系人列表
主活动:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
AppTheme {
val contatoViewModel: ContatoViewModel = viewModel(factory = ContatoViewModelFactory(LocalContext.current.applicationContext as Application))
val contatos = contatoViewModel.readAllData.observeAsState(listOf()).value
val novoContatoLaunch = rememberLauncherForActivityResult(ActivityResultContracts.StartActivityForResult()) {
run {
when(it.resultCode) {
RESULT_OK -> {
Toast.makeText(this@MainActivity, "Contato Salvo!", Toast.LENGTH_LONG).show()
//TODO I need to update the contatos here
}
}
}
}
MainView(contatos) {
novoContatoLaunch.launch(Intent(this@MainActivity, NovoContatoActivity::class.java))
}
}
}
}
NewContactActivity
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
AppTheme {
val contatoViewModel: ContatoViewModel = viewModel(factory = ContatoViewModelFactory(LocalContext.current.applicationContext as Application))
NovoContatoView {
contatoViewModel.addContato(it)
setResult(RESULT_OK)
finish()
}
}
}
}
【问题讨论】:
标签: android android-room android-jetpack-compose