我面临一个特殊问题,我有两个独立的活动,但如果需要,两个人都可以调用一个片段在本地数据库中插入一些数据。所以,由于片段是常见的,我保留了应有的一切。它在第一项活动中运作良好且良好。但是,当我尝试从其他活动中做同样的事情时,我完全失望,它永远无法运作。
我调试了它,发现每当我调用initloader方法时,它都没有进入createLoader方法。无论我是否使用强制加载它都无效,但它直接归结为加载完成的方法。
我很困惑,为什么它适用于第一个活动,为什么它不适用于第二个,无论如何它是一个片段,我可以从任何正确的地方调用它?
编辑:
两个活动打开相同的片段,片段内部有一个加载器,使用asynctask loader在本地数据库中插入一些数据。由于它的相同片段加载器ID是相同的,但我正在做
getActivity().getSupportLoaderManager().destroyLoader(loader.getId());
在loadfinshed结束时删除loader id。并不是第一个活动总是一开始就开始的情况,即使我去了第二个活动它也不起作用,但如果我去另一个活动就行了。
不调用Createloader,而是直接进入loadfinshed。
任何提示我可能做错了什么?