このリンクの投稿に同じ問題があると思います 別のマーカーは同じ情報ウィンドウのコンテンツを表示しますandroid google map v2
私は現在、Google マップ v2 を統合して、ユーザーが写真を撮り、地図上にマーカーを自動的にプロットできるようにするアプリを開発しています。
InfoWindowAdapter が動作していますが、以下に示すようにビットマップを設定すると、次のようになります。
ImageView ivIcon = ((ImageView)myContentsView.findViewById(R.id.iconImg));
ivIcon.setImageBitmap(getResizedBitmap(myBitmap.getBp(),100,100));
カメラを使用して複数の写真を撮る場合 (つまり、マップ上にそれぞれのマーカーがプロットされることを意味します)、マーカーはすべて同じ画像を共有します。これは、カメラから取得された最新の画像です。Bitmap オブジェクト名の違いをチェックして Class を作成すれば問題は解決すると思いましたが、解決しませんでした。
申請時は次のようです。
myMap.setInfoWindowAdapter(new MyInfoWindowAdapter());
すべてのマーカーに適用されます。
各マーカーが独自のカスタム情報ウィンドウ アダプターを持つようにするにはどうすればよいですか?
ありがとう!
=======================================編集========= ========================
ユーザーが写真を撮って、画像キャプチャの場所の地図にマーカーをプロットできるアプリケーションがあります。マーカーにはカスタム InfoWindow があります。私は解決策を試しましたが、それらは私にはあいまいです。
次のようにコードに何をしたかを説明してもよろしいですか:
googleMap.setInfoWindowAdapter(新しい InfoWindowAdapter()); マップ上のすべてのマーカーに影響しませんか?
CustomInfoBox の現在のコードは次のとおりです。
class MyInfoWindowAdapter は InfoWindowAdapter を実装します{
プライベート最終ビュー myContentsView;
MyInfoWindowAdapter(){
myContentsView = getLayoutInflater().inflate(R.layout.custom_info_window, null);
}
@Override
public View getInfoContents(Marker marker) {
//TextView tvTitle = ((TextView)myContentsView.findViewById(R.id.title));
// tvTitle.setText(marker.getTitle());
TextView tvSnippet = ((TextView)myContentsView.findViewById(R.id.snippet));
tvSnippet.setText(marker.getSnippet());
ImageView ivIcon = ((ImageView)myContentsView.findViewById(R.id.badge));
ivIcon.setImageBitmap(getResizedBitmap(myBitmap.getBp(),100,100));
System.out.println("Custom Info Window: " + myBitmap.getBp());
return myContentsView;
}
@Override
public View getInfoWindow(Marker marker) {
// TODO Auto-generated method stub
return null;
}
}
googleMap.setInfoWindowAdapter(MyInfoWindowAdapter); を呼び出すと、すべてのマーカーのレイアウトが同じになり、同じ画像 (ユーザーが最後に撮影した画像) が表示されますが、これは私が望むものではありません。
どんな助けでも大歓迎です!ありがとう