地图v2 Android中的错误视图?

地图v2 Android中的错误视图?,android,android-viewpager,android-view,android-maps-v2,Android,Android Viewpager,Android View,Android Maps V2,我使用actionbar选项卡和ViewPager创建选项卡并在选项卡之间滑动。我将SherlockFragmentActivity用于选项卡页面适配器,并用于每个项目扩展片段。这个项目在locationmap pagefragment中的所有页面第一次都可以使用,但是当我更改选项卡,然后第二次返回时,locationmap页面崩溃。 错误行:视图 public View onCreateView(LayoutInflater inflater, ViewGroup container, Bun

我使用actionbar选项卡和ViewPager创建选项卡并在选项卡之间滑动。我将SherlockFragmentActivity用于选项卡页面适配器,并用于每个项目扩展片段。这个项目在locationmap pagefragment中的所有页面第一次都可以使用,但是当我更改选项卡,然后第二次返回时,locationmap页面崩溃。 错误行:视图

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

    View view = inflater.inflate(R.layout.activity_location_map, container, false);
    return view;
}
布局:

<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    class="com.google.android.gms.maps.SupportMapFragment" />

您的问题与您试图在碎片中膨胀碎片这一事实有关。您应该扩展SupportMapFragment,而不是将其包装为另一个片段。删除布局文件并删除onCreateView方法。然后使LocationMapFragment扩展SupportMapFragment


谢谢你,伊格林,我能解决我的问题

完整代码:

public class LocationMapFragment extends SupportMapFragment  {

    private LatLng mPosition;


    public LocationMapFragment() {
        super();

    }

    public static LocationMapFragment newInstance(LatLng posicion){
        LatLng l=new LatLng(35.722838,51.371342);
        LocationMapFragment frag = new LocationMapFragment();
        frag.mPosition; = l;
        return frag;
    }


    @Override
    public View onCreateView(LayoutInflater arg0, ViewGroup arg1, Bundle arg2) {
          View v = super.onCreateView(arg0, arg1, arg2);
          initMap();
           return v;
    }

    private void initMap(){
        UiSettings settings = getMap().getUiSettings();
        settings.setAllGesturesEnabled(false);
        settings.setMyLocationButtonEnabled(false);
       LatLng mPath=new LatLng(35.722838,51.371342);
        getMap().moveCamera(CameraUpdateFactory.newLatLngZoom(mPath,16));
        getMap().addMarker(new MarkerOptions().position(mPath).icon(BitmapDescriptorFactory
                .defaultMarker(BitmapDescriptorFactory.HUE_GREEN)));

        getJson();

    }
} 

您能发布错误完整堆栈跟踪的日志吗?11-26 12:11:02.328:E/AndroidRuntime20769:由以下原因引起:java.lang.IllegalArgumentException:Binary XML文件第2行:重复id 0x7f050039、标记null或父id 0x0以及com.google.android.gms.maps.SupportMapFragments的另一个片段任何人都帮不了我吗?非常感谢,但这对我来说是个错误。你能给我们完整的代码吗?
public class LocationMapFragment extends SupportMapFragment {
    // code here without onCreateView
}
public class LocationMapFragment extends SupportMapFragment  {

    private LatLng mPosition;


    public LocationMapFragment() {
        super();

    }

    public static LocationMapFragment newInstance(LatLng posicion){
        LatLng l=new LatLng(35.722838,51.371342);
        LocationMapFragment frag = new LocationMapFragment();
        frag.mPosition; = l;
        return frag;
    }


    @Override
    public View onCreateView(LayoutInflater arg0, ViewGroup arg1, Bundle arg2) {
          View v = super.onCreateView(arg0, arg1, arg2);
          initMap();
           return v;
    }

    private void initMap(){
        UiSettings settings = getMap().getUiSettings();
        settings.setAllGesturesEnabled(false);
        settings.setMyLocationButtonEnabled(false);
       LatLng mPath=new LatLng(35.722838,51.371342);
        getMap().moveCamera(CameraUpdateFactory.newLatLngZoom(mPath,16));
        getMap().addMarker(new MarkerOptions().position(mPath).icon(BitmapDescriptorFactory
                .defaultMarker(BitmapDescriptorFactory.HUE_GREEN)));

        getJson();

    }
}