小编Jov*_*ovy的帖子

ClassNotFoundException读取在onSaveInstanceState中扩展MapFragment的类中的Serializable对象

我有一个扩展SupportMapFragment的类,我从后端加载一些数据并显示标记.我还有另一个片段,我在地图上显示与所选标记相对应的细节.我正在以纵向模式在地图下方显示细节片段,并在横向中并排显示.

public class MapDisplayFragment extends SupportMapFragment {
private ArrayList<ShowLocation> locations = null;

public void onViewCreated(View view, Bundle savedInstanceState) {
    if (savedInstanceState != null) {
    locations = (ArrayList<ShowLocation>)savedInstanceState.getSerializable("LOCATIONS");
    }
}
@Override
public void onSaveInstanceState(Bundle outState) {
  if (outState == null) {
 outState = new Bundle();
  }
  outState.putSerializable("LOCATIONS", locations);
  super.onSaveInstanceState(outState);
}
Run Code Online (Sandbox Code Playgroud)

我有一个实现Serializable的类,它在派生的map类中使用.我使用onSaveInstanceState来存储对象,这样我就不必再从后端检索数据.但应用程序崩溃与java.lang.RuntimeException:Parcelable遇到ClassClassNotFoundException当我翻转设备时读取Serializable对象.

public class ShowLocation implements Serializable {
    private String geoCodeLat = Constants.EMPTY_STRING;
    private String geoCodeLng = Constants.EMPTY_STRING;
    ....
    public String getGeoCodeLat() {
       return geoCodeLat;
    }
    public void …
Run Code Online (Sandbox Code Playgroud)

android mapfragment supportmapfragment

9
推荐指数
1
解决办法
3618
查看次数

标签 统计

android ×1

mapfragment ×1

supportmapfragment ×1