Markerサーバーから取得しているs とs の長い可変リストがありPolylineます。状況によっては、MarkerのアイコンをPolyline変更したり、 の色を変更したりする必要があります。
私のオブジェクトには ID があるので、どのポリライン/マーカーを更新する必要があるかを知ることができるはずです。ただし、マーカーとポリラインにはsetId()orgetId()メソッドがなく、サーバーが要求すると動的に更新 (および追加) されます。
どのアイテムを削除してから追加する必要があるかを知るために、 aHashMap<Integer, Marker>と aを使用することを考えました。HashMap<Integer, Polyline>私はこれについて考えました:
- アイテムを受け取ります。そのIDを取得します。
HashMap同じ ID を持つアイテムの正しいクエリを実行します。- HashMap が null を返さない場合は、
Marker.remove()orを呼び出しPolyline.remove()てから、アイテムをHashMap hashMap.get(id)何があってもnullを返す必要があるので、Polyline/を描画して、アイテムをMarkerにGoogleMap追加しますHashMap。
しかし、これを実装する前に、giant を使用しないでこれを行う方法があるかどうかを知りたいと思いHashMapます。
HashMaps、SparseArrays、または同様のものを使用せずにこの動作を実現する別の方法はありますか?