Fragment使用百度地圖切換頁面出現短暫黑屏
阿新 • • 發佈:2019-02-04
接手公司專案,發現fagement使用百度地圖切換時產生短暫黑屏,查了一下資料,大致原因是百度SDK的問題:
解決方法:
1,在activity種的onCreate()方法中設定視窗透明度。
public void onCreate(Bundle savedInstanceState) { //避免載入地圖黑屏 getWindow().setFormat(PixelFormat.TRANSLUCENT); super.onCreate(savedInstanceState);
}
2,如果問題沒有得到解決,手動在fragment的onResume()、onPause()方法中手動新增可視狀態:
@Override public void onResume() { mMapView.setVisibility(View.VISIBLE); mMapView.onResume();
super.onResume();
}@Overridepublic void onPause() { mMapView.setVisibility(View.INVISIBLE); mMapView.onPause(); super.onPause();}
3,如果還為得到解決,可以嘗試替換地圖控制元件,可以把MapView換成TextureMapView:
<com.baidu.mapapi.map.TextureMapViewandroid:id="@+id/bmapView" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:clickable="true" > </com.baidu.mapapi.map.TextureMapView>