--here--gold--you--want

Fragment.onViewCreated()是在Fragment.onCreateView()函数之后调用的,调用到它时 表明fragment视图层级结构已创建完毕。在onViewCreated()函数里观察LiveData可以保证“展示crime的视图已经准备完毕”,这也解释了为什么你传给observe()函数的不是fragment自身, 而是viewLifecycleOwner.只有你的fragment视图处于有效状态——还在屏幕上, 你才需要接受crime更新。

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)
        
        crimeListViewModel.crimeListLiveData.observe(
            viewLifecycleOwner,
            { crimes ->
                crimes?.let {
                    Log.i(TAG, "Got crimes ${crimes.size}")
                    updateUI(crimes)
                }
            }
        )
    }

 

分类:

技术点:

相关文章:

  • 2021-12-15
  • 2022-12-23
  • 2021-11-28
  • 2022-12-23
  • 2021-12-08
  • 2022-12-23
  • 2022-02-04
  • 2022-02-14
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-10-30
  • 2021-05-15
  • 2021-07-24
  • 2022-12-23
  • 2021-09-22
相关资源
相似解决方案