我正在试用Android向日葵应用程序。我要求展示一份主题清单。当单击某个主题时,我希望递归地显示子主题。我试图在Android向日葵中的“植物列表”视图中对此进行建模。
处理这种递归的最好方法是什么?我有两个想法。
。
请帮帮忙。
发布于 2022-11-21 03:54:53
我也有这个问题。现在,我已经通过使用navArgs和viewModel找到了一个解决方案。
PlantListFragment.kt
class PlantListFragment : Fragment() {
private val viewModel by inject<PlantListViewModel>()
private val args by navArgs<PlantListFragmentArgs>()
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Pass nav arg (list) to view model to initialize.
// Assuming you already setup the argument in the navigation file properly.
viewModel.setupFromNavArgs(args.list)
}
fun setupList() {
viewModel.list.observe(viewLifeCycleOwner) {
// Do the list view setup with `it`
}
}
}PlantListViewModel.kt
class PlantListViewModel : ViewModel() {
private val _list = MutableLiveData<List<Plant>>()
val list: LiveData<List<Plant>> = _list
fun setupFromNavArgs(list: List<Plant>) {
if (_list.value == null) {
_list.value = list
}
}
}祝好运!
https://stackoverflow.com/questions/59780463
复制相似问题