android - 将 recyclerview 的卡片连接到谷歌地图中的标记

标签 android android-recyclerview google-maps-markers margin android-cardview

我需要帮助来创建类似实地考察应用程序的界面,我在水平 RecyclerView 中有一个卡片列表。我想将 map 上的每个标记与其卡片连接起来,当单击一个标记时,与其相连的卡片会比其他卡片移动到上方,底部边距为 20。我该如何实现这一点?

enter image description here

Override
public boolean onMarkerClick(Marker marker) {
    // TODO Auto-generated method stub
    marker=selected_marker;
    selected_marker_title=marker.getTitle();

    lm.smoothScrollToPosition(mRecyclerView, null, 3);


    return false;
} 

最佳答案

有点晚了,但试试这个:

map.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(final Marker marker){

final LatLng markerPosition = marker.getPosition();
int selected_marker = -1;
for (int i = 0; i < YOURLIST.size(); i++) {
    if (markerPosition.latitude == YOURLIST.get(i).getMap().getLatitude() && markerPosition.longitude == YOURLIST.get(i).getMap().getLongitude()) {
        selected_marker = i;
     }
}
CameraPosition cameraPosition = new CameraPosition.Builder().target(markerPosition).zoom(12).build();
map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
YOURADAPTER.notifyDataSetChanged();
YOURRECYCLERVIEW.smoothScrollToPosition(selected_marker);

marker.showInfoWindow();

return false;

}
});

关于android - 将 recyclerview 的卡片连接到谷歌地图中的标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37058897/

相关文章:

android - Nexus 7 NFC 干扰无线充电

android - 在 Recyclerview 中下载图片

android - 从 Fragment 中的适配器(recyclerview)获取所有项目

vuejs3 - Vue 3 中的高级MarkerView

ios - 如何在快速选择时更改谷歌地图标记颜色?

google-maps - Flutter Google Maps - 根据行车方向旋转标记

java - 无法为外部集合成员的类构建惰性迭代器

java - Android、Java -> 如何创建并返回 Location 对象?

android - 如何更改 PreferenceScreen 中的字体大小

android - 在 RecyclerView 中水平居中项目(使用 GridLayoutManager)