我有一个包含以下代码的xml布局:
<fragment
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="100dp"
android:name="com.google.android.gms.maps.SupportMapFragment" />
此布局可以在主活动中多次膨胀,在这种情况下,应显示多个 MapFragment。但是,当发生这种情况时,我收到以下错误:
Duplicate id 0x7f0a0213, tag null, or parent id 0xffffffff with another fragment for com.google.android.gms.maps.SupportMapFragment
根据我的理解,发生这种情况是因为您不能拥有超过 1 个具有相同 id 的<fragment>
。
如何用这些地图片段多次膨胀这些视图?是否可以在每次布局膨胀时为每个片段分配不同的 ID?
编辑:我找到了这个。我想我无法以编程方式设置片段本身的 ID。
只需将 id 从 android:id="@+id/map" 更改 到 android:id="@+id/map2" 等。 请注意,每个谷歌地图的性能和内存都很昂贵,所以问问自己你真的需要不止一张地图吗?