我有点麻烦,我想在地图上出现一个标记,每个循环都在新位置并移除旧标记,但旧标记仍在那里,我认为选项。可见(假) ;会删除它但它们仍然可见。
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();
答案 0 :(得分: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));