我使用导航组件在我的碎片之间进行导航。我的应用程序很简单。它有两个片段,第一个片段是项目列表,第二个片段显示该项目的详细信息。当用户点击一个项目时,我调用
view.findNavController()
.navigate(R.id.action_photosFragment_to_photoDetailsFragment, bundle)
但问题是,当我按下返回键时,第一个片段重新加载并再次进行网络调用。
override fun onActivityCreated(savedInstanceState: Bundle?) {
photosViewModel.getPhotos()
photosViewModel.photosLiveData.observe(viewLifecycleOwner, photosObserver)
photosViewModel.loadingLiveData.observe(viewLifecycleOwner, loadingObserver)
super.onActivityCreated(savedInstanceState)
}
这段代码又被调用了! 我怎样才能停止重载?
使用 onCreate()
在你的片段中调用网络。
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
photosViewModel.getPhotos()
}