优先点击折线而不是标记谷歌地图Android

时间:2017-11-29 13:17:32

标签: android google-maps

我有一个应用程序,其中绘制了线条,上面有一个标记,显示该行的信息。

  • 这些线条是可点击的
  • 我正在使用Bitmap,Paint和Canvas绘制标记。

绘制线条的代码

Polyline polyline = googleMap.addPolyline(line.getPolylineOptions());
polyline.setTag(linea);
polyline.setClickable(clickeable);
polyline.setZIndex(1.0f);

绘制标记代码

Bitmap.Config conf = Bitmap.Config.ARGB_8888;
Bitmap bmp = Bitmap.createBitmap(150, 30, conf);

Paint paint = new Paint();
paint.setAntiAlias(true);
paint.setColor(Color.BLACK);
paint.setTypeface(Typeface.create(Typeface.DEFAULT, Typeface.BOLD));
paint.setStyle(Paint.Style.FILL_AND_STROKE);
paint.setTextSize(18);

Canvas canvas = new Canvas(bmp);
canvas.drawText(text, 15, 15, paint);

canvas.save();

Marker m = googleMap.addMarker(new MarkerOptions()
        .position(latLng)
        .zIndex(-1.0f)
        .icon(BitmapDescriptorFactory.fromBitmap(bmp))
);

点击线条时我需要点击此标记而不是标记。

我尝试使用Z-Index,但它不起作用。

请帮忙。

1 个答案:

答案 0 :(得分:0)

我没有找到优先考虑行而不是标记的方法。

请参阅https://developers.google.com/maps/documentation/android-api/marker?hl=es-419#click-index

  

与其他叠加或形状(折线,多边形,圆形和/或地面叠加)相比,标记实际上被认为是在单独的z索引组中,而不管其他叠加的z索引。如果多个标记,叠加或形状叠加在一起,则单击事件首先循环通过标记簇,然后根据其z-index值触发其他可点击叠加或形状。

相反,我在以下方法中调用相同的方法:

onMarkerClick ()

OnPolylineClickListener ()

单击该行或其标记时使用相同的功能。