当面の問題は、から値を取得しようとするとhashmapnullが返されることです。
私はhashMapインスタンスを持っています:
Map<Marker,Tag> theHashMap = new HashMap<Marker,Tag>();
ここで、 tag は に関する簡単な情報を保持するクラスでmarkerあり、markerは Google マップmarkerです。
これがすべて発生するアクティビティの開始時に theHashMap に追加します
theHashMap.put(mapController.AddMarker(new Tag(1, "City Of Dundee", DUNDEE_LOCATION, "untagged",), new Tag(1, "City Of Dundee", DUNDEE_LOCATION, "untagged",));
どこに関連mapControllerするすべてを扱うクラスです。googleMap
そしてmapController。マップに追加された をAddMarker返します。marker
が満たされると、後で参照できるように にhashMap渡されます。onMarkerClickListener
クリックした場所hashMap.get(marker);から呼び出し
ます。marker listenermarkermarker
常にnullを返すhashMap、onMarkerClickリスナー内が別のインスタンスだったからかなと思ったのですが、オリジナルへのポインタを作ってみたのですがうまくいかず、そこのタイトルを比較しようhashMap.get(marker.getTitle());とmarker.getID()思って試してみましたがそれは同じ結果で終わった。
リクエストがあればさらに情報を追加しますが、今のところ、クリックされたマーカーに基づいて hashMap から値を取得する他の方法はありますか?