在 Google Maps v2 中获取地图标记 ID

尤努斯司库

我正在从我的 SQLite 数据库中获取我的标记数据。我将这些数据存储在数组列表中。

在我的活动中,我还创建了 2 个标记之间的路线。(其中一个标记是用户的当前位置)并且用户单击随机标记,它会显示该标记和用户当前位置之间的路线。但我有问题。因为我不知道我怎么知道点击了哪个标记?任何想法?

注意:我正在使用这项工作来路由https://github.com/akexorcist/Android-GoogleDirectionLibrary

我的数据库截屏

地图活动.java

SQLiteDatabase db=dbHelper.getReadableDatabase();
        String[] getColumnName={"bakim_enlem,bakim_boylam,bakim_title"};
        Cursor imlec=db.query("bakim_yerleri", getColumnName, null, null, null, null, null);

        while(imlec.moveToNext())
        {
            mMap.addMarker(new MarkerOptions().position(new LatLng
                    (imlec.getDouble(imlec.getColumnIndex("bakim_enlem")),imlec.getDouble(imlec.getColumnIndex("bakim_boylam"))))
                    .title(imlec.getString(imlec.getColumnIndex("bakim_title"))).
                    icon(BitmapDescriptorFactory.fromResource(R.drawable.mapmarker)));

        }


        }



  //route code
@Override
public boolean onMarkerClick(final Marker marker)
{
   //in default, you can write here and down there-> LatLng marker1
   if (marker.equals(**?**))
    {
        CoordinatorLayout rootLayout = (CoordinatorLayout) findViewById(R.id.mapCoordinatorLayout);
        Snackbar.make(rootLayout, "Rota oluşturuluyor...", Snackbar.LENGTH_LONG).show();
        GoogleDirection.withServerKey(serverKey)
                .from(suanKonumumuz)
                .to(**?**)
                .transportMode(TransportMode.DRIVING)
                .execute(this);
    }
    return true;
}
扎希德·拉希德

添加标记时,您始终可以使用marker.setTag(ID),当用户单击标记时,请尝试marker.getTag() 以找出单击了哪个标记。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章