如何在回收者视图的每个项目中使用地图

时间:2019-08-07 18:34:44

标签: java android google-maps android-recyclerview

我正在为我的android应用程序使用recyclerview,其中每个项目都包含一张地图。

我的问题是如何实现的?

我尝试了两种方法来实现此目的(片段和mapview)。第一种方法是在XML文件中使用片段,并在我的java类中使用SupportMapFragment。通过这种实现方法,我得到了这个错误:

android.view.InflateException: Binary XML file line #23: Error inflating class fragment

但是当我使用MapView时,我得到了白色的视图,而没有其他东西:|

我实现了这样的片段

这里是XML文件

<fragment
            android:id="@+id/all_order_each_item_map"
            android:name="com.google.android.gms.maps.SupportMapFragment"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="match_parent"
            android:layout_marginRight="@dimen/_4sdp"
            tools:context=".AllOrdersActivity"/>

在我的JAVA班级中,我如何初始化地图

 mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.all_order_each_item_map);
        mapFragment.getMapAsync(this);

然后我将mapView作为第二种方法,例如 这里是XML文件

<com.google.android.gms.maps.MapView
            android:id="@+id/all_order_each_item_map"
            android:name="com.google.android.gms.maps.SupportMapFragment"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="match_parent"
            android:layout_marginRight="@dimen/_4sdp"/>

下面的代码显示如何在我的JAVA班级中初始化MAPVIEW

mapFragment = viewHolder.root_view.findViewById(R.id.all_order_each_item_map);

我将此库(https://github.com/lisawray/groupie)用作我的recyclerview适配器

在此,我对语言错误和任何其他问题深表歉意。

谢谢

1 个答案:

答案 0 :(得分:0)

我终于从该解决方案https://stackoverflow.com/a/30484062/10401375获得帮助并编辑了部分代码,从而找到了答案