を統合したアプリを開発しました。今私は多くのピンをGoogleマップに設定しました。いずれかのピンをクリックすると、そのピンの詳細が1つのダイアログに表示されます。これはすべて完全に動作しています。これはimagesです。
問題点: -私はいずれかのマーカーをクリックしてダイアログを開きますが、2番目のマーカーをクリックすると、最初に却下されました。再度マーカーをクリックするとダイアログが開きますが、いずれかをクリックすると新しいダイアログが開きます。これは、マーカー(画像を見る)をクリックするたびに、そのマーカー関連(データを意味する)ダイアログが即座に開くということは可能ですか?ダイアログが既に開いているときに背景レイアウトをクリック
私はこの試みをdialog.setCanceledOnTouchOutside(true);
で試みましたが、ダイアログのレイアウトを外側にクリックすると、ダイアログを閉じるだけです。
ご協力いただきありがとうございます。
はこれは、あなたが背景をクリックすることはできませんので、その後View
があなたのメインのレイアウトに追加されたダイアログを使用しているとき、私は、ダイアログ
Dialog mapMarkerDialog = null;
private void showMapMarkerDialog(Marker marker)
{
try
{
mapMarkerDialog = new Dialog(activity, android.R.style.Theme_Translucent_NoTitleBar);
mapMarkerDialog.setContentView(R.layout.dialog_map_info_window);
mapMarkerDialog.setCanceledOnTouchOutside(true);
RelativeLayout llMapClubDetailTop = (RelativeLayout)mapMarkerDialog.findViewById(R.id.llMapClubDetailTop);
LinearLayout llMapClubDetail = (LinearLayout)mapMarkerDialog.findViewById(R.id.llMapClubDetail);
ImageView imgMapDialogClubImage = (ImageView)mapMarkerDialog.findViewById(R.id.imgMapDialogClubImage);
TextView txtMapDialogClubName = (TextView)mapMarkerDialog.findViewById(R.id.txtMapDialogClubName);
TextView txtMapDialogClubLocation = (TextView)mapMarkerDialog.findViewById(R.id.txtMapDialogClubLocation);
TextView txtMapDialogClubDiscount = (TextView)mapMarkerDialog.findViewById(R.id.txtMapDialogClubDiscount);
llMapClubDetail.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mapMarkerDialog.dismiss();
mapMarkerDialog.cancel();
//start new activity
}
});
mapMarkerDialog.show();
}
catch (Exception e)
{
Log.e(TAG, "***Error while call showMapMarkerDialog() method");
e.printStackTrace();
}
}
ダイアログの代わりに、ViewGroupを使用してこの情報を表示します。 visibilityプロパティを使用してViewGroupを表示および非表示にすることができます。 –
@SureshKumarご返信ありがとうございますが、あなたは 'ViewGroup'についてさらにいくつかの情報を提供できますか? – Ninja
ダイアログの代わりに 'popup window'を使います。 – Shailesh