1. 程式人生 > >Fragment使用百度地圖切換頁面出現短暫黑屏

Fragment使用百度地圖切換頁面出現短暫黑屏

接手公司專案,發現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.TextureMapView
android: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>