Android:使用MVVM框架,多fragment都依赖一个底层activity或者fragment出现的问题

这个问题的碰到是ViewModel实现了LifecycleObserver接口,并且在fragment或者activity中getLifecycle().addObserver(你的viewModel) 碰到的,假如你子fragment实现的ViewModel是依赖于父activity或者父fragment,在ViewModel的LifecycleObserver实现中调用方法,会多次触发。比如:在onCreate中使用EventBus.getDefault.register(this)就是报错,说重复注册;比如获取数据的话,就会获取两次。

解决方法很多,看你具体什么情况,这边只是记录一下原因

猜你喜欢

转载自blog.csdn.net/qq_27454233/article/details/110684698