【问题标题】:Adding and removing markers添加和删​​除标记
【发布时间】:2018-08-19 16:36:22
【问题描述】:

我遇到了一点麻烦,我希望每个循环的新位置都出现一个标记并删除旧标记,但是旧标记仍然存在,我认为 options.visible(false);将删除它,但它们仍然可见。

public void newTimer(final polyline route)
{
    new CountDownTimer(30000, 1000)
    {
        int i = 0;
        MarkerOptions options = new MarkerOptions();
        public void onTick(long millisUntilFinished)
        {
                i++;
                options.visible(false);
                 options =new MarkerOptions()
                    .position(route.getPositions().get(i))
                    .visible(true)
                    .icon(BitmapDescriptorFactory
                    .defaultMarker(BitmapDescriptorFactory.HUE_AZURE));
                mMap.addMarker(options);
        }

        public void onFinish() {
            Log.d("Remaining time: ","0");
        }
    }.start();

【问题讨论】:

标签: java android google-maps google-maps-markers


【解决方案1】:

无需创建新标记,只需更新位置即可。

private Marker myMarker = null;
if (myMarker == null)
    myMarker = mMap.addMarker(new MarkerOptions())
                    .position(route.getPositions().get(i))
                    .icon(BitmapDescriptorFactory
                    .defaultMarker(BitmapDescriptorFactory.HUE_AZURE));
else
  myMarker.setPosition(route.getPositions().get(i));

【讨论】:

    猜你喜欢
    • 2015-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-01
    • 1970-01-01
    相关资源
    最近更新 更多