Android IllegalArgumentException实例化SupportMapFragment

Android IllegalArgumentException实例化SupportMapFragment,android,android-fragments,android-maps-v2,android-cursoradapter,illegalargumentexception,Android,Android Fragments,Android Maps V2,Android Cursoradapter,Illegalargumentexception,我正在使用一个数据库,其中记录了每个条目以及其他信息(纬度和经度) 在开发应用程序的“消费部分”时,通过光标或适配器生成并显示条目列表,我遇到了一个恼人的错误: java.lang.IllegalArgumentException:二进制XML文件行#85:重复id 0x7f050070、标记null或父id 0x0以及com.google.android.gms.maps.SupportMapFragment的另一个片段 我在谷歌上搜索发现,这是由于同一个片段的多次实例化造成的。但由于它不是一

我正在使用一个数据库,其中记录了每个条目以及其他信息(纬度和经度)

在开发应用程序的“消费部分”时,通过
光标或适配器生成并显示条目列表,我遇到了一个恼人的错误:

java.lang.IllegalArgumentException:二进制XML文件行#85:重复id 0x7f050070、标记null或父id 0x0以及com.google.android.gms.maps.SupportMapFragment的另一个片段

我在谷歌上搜索发现,这是由于同一个片段的多次实例化造成的。但由于它不是一个简单的片段,而是每次调用
bindView()
时都会自动附加的东西,所以我实际上不知道如何删除所有嵌套片段

ReadActivity调用游标适配器

而在游标适配器中最重要的方法是:

@Override
public void bindView(View v, Context context, Cursor c) {

    // [...]

    GoogleMap map = 
            ((SupportMapFragment) (((FragmentActivity) context).getSupportFragmentManager().findFragmentById(R.id.READ_map)))
            .getMap();

    final double lat = c.getDouble(c.getColumnIndexOrThrow(MySQLiteHelper.SPESE_KEY_LAT));
    final double lon = c.getDouble(c.getColumnIndexOrThrow(MySQLiteHelper.SPESE_KEY_LON));


    map.addMarker(new MarkerOptions().position(new LatLng(lat, lon)).title(tipo));

}
最后,阅读地图非常简单:

   <fragment
        android:id="@+id/READ_map"
        android:layout_width="match_parent"
        android:layout_height="100dp"
        class="com.google.android.gms.maps.SupportMapFragment" />

我不太清楚您的设置,如果我错了,请纠正我。您使用的是游标适配器,这意味着您在每个单元格中都有一个带有映射的listview,并且希望在每个映射上放置一个由数据库填充的标记。如果是这样的话,我认为你得到了错误的片段<代码>((SupportMapFragment)((FragmentActivity)上下文).getSupportFragmentManager().findFragmentById(R.id.READ_-map)).getMap()
在片段活动中查找片段,在本例中,我认为这是您的ReadActivity。您需要的是在listview的相关单元格中查找片段

然而,我不确定这是可能的。此外,将片段放入listview中不是一个好主意,请查看此图。我建议找到一种不同的方式来显示您的信息,将地图数据从listview拉到单个地图中

   <fragment
        android:id="@+id/READ_map"
        android:layout_width="match_parent"
        android:layout_height="100dp"
        class="com.google.android.gms.maps.SupportMapFragment" />