2015-08-07 1 views
-1

Я успешно делаю и рисую полилинии на событии щелчка маркера. Но происходит нечто, что я не хочу быть.Как удалить линию Poly из Google Map v2 android

И это когда я нажимаю на маркер. Пусть говорят, что JackiMarker направляет маршрут в целевое местоположение, но затем я нажимаю на второй маркер, говоря, что MichaelMarker также рисует маршрут, но предыдущий маркер все еще там, который я не хочу быть.

Я пою this код для рисования и удаления маркера. Он имеет функцию clearRoute, но он не работает для меня, пожалуйста, помогите мне, что делать. Пожалуйста, помогите мне удалить последнюю полилинию, которую я нарисовал на карте.

ответ

0

Пожалуйста, попробуйте это,

Polyline polyline = this.mMap.addPolyline(new PolylineOptions().....); 

Затем, когда вы хотите, чтобы удалить его:

polyline.remove(); 

Если у вас есть много Polylines, просто добавить их в список, как они ставятся на карте :

List<Polyline> polylines = new ArrayList<Polyline>(); 

for(....) 
{ 
    polylines.add(this.mMap.addPolyline(new PolylineOptions()....)); 

} 

И когда вы хотите удалить:

for(Polyline line : polylines) 
{ 
line.remove(); 
} 
polylines.clear(); 

Ключ должен содержать ссылку на Polyline objects и звонить по номеру .remove() на каждом из них.

+0

но его не вынимая –

+0

Попробуйте для (полилинии линии: ломаные линии) { если (isSpecificPolyline (линия)) line.remove(); } – AndroidEnthusiastic

+0

Что такое специфическийПолилайн (линия) ....? –

0

Это 100% рабочий код, который я использовал в вопросе, проблема была в моем конце. то, что я делал, пытался удалить путь при нажатии на маркер, а в OnMarkerClickListener я инициировал класс маршрута, который создал другой экземпляр того же класса, создав таким образом массив полилиний из индекса 0, который есть почему я был не попадая в цикл for метода clearRoute.

так, создавая экземпляр класса Route как глобальную проблему.

 Смежные вопросы

  • Нет связанных вопросов^_^