我在片段中使用谷歌地图。地图第一次完美加载但是当我试图回到包含来自另一个片段的谷歌地图的片段时,它崩溃并出现以下错误。
android.view.InflateException: Binary XML file line #14: Error inflating class fragment
这是初始化片段的代码
SupportMapFragment fragment
并在onCreateView
fragment = (SupportMapFragment)getChildFragmentManager().findFragmentById(R.id.map);
fragment.getMapAsync(this);
布局代码
<fragment
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
为了解决这个问题,我删除了onPause
中的地图片段
getChildFragmentManager().beginTransaction()
.remove(fragment).commit();
但问题是,如果我这样做谷歌地图每次重新加载。它重绘标记。我想要的是当我浏览其他片段时,我想保存谷歌地图状态。
答案 0 :(得分:-1)
SupportMapFragment f = (SupportMapFragment)
getSupportFragmentManager().findFragmentByTag(tag);
if(f != null ){
//remove fragment
//add fragment
}
希望有所帮助