我在片段中有一个谷歌地图。如果我在使用片段时去应用程序外部,在我返回时我无法看到地图。但是,如果我通常从一个片段移动到另一个片段,则没有问题。我正在使用导航抽屉,所以我必须使用片段 任何解决方案将不胜感激。谢谢。
以下是与onPause()相关的片段的一部分。我想我在代码中犯了一些错误,请向我指出。
@Override
public void onPause() {
super.onPause();
final FragmentManager fragManager = this.getFragmentManager();
final Fragment fragment = fragManager.findFragmentById(R.id.map1);
if(fragment!=null){
fragManager.beginTransaction().remove(fragment).commit();
}
}
@Override
public void onDestroy() {
super.onDestroy();
final FragmentManager fragManager = this.getFragmentManager();
final Fragment fragment = fragManager.findFragmentById(R.id.map1);
if(fragment!=null){
fragManager.beginTransaction().remove(fragment).commit();
}
}
答案 0 :(得分:0)
您可以修复该异常。在显示地图的片段中,覆盖onDestroyView()。
{{1}}
我认为你需要从API 16开始。
希望这有帮助。
答案 1 :(得分:0)
最后我得到了解决方案。现在它正在运行,应用程序不再崩溃。
@Override
public void onDestroyView() {
super.onDestroyView();
try{
MapFragment fragment = ((MapFragment) getFragmentManager().findFragmentById(R.id.map));
FragmentTransaction fragTran = getActivity().getFragmentManager().beginTransaction();
ft.remove(fragment);
ft.commit();
}catch(Exception e){
}
}