-2

私はアンドロイドが初めてで、ちょっとした助けが必要です。Googleマップによく似たアプリケーションを開発しています。マップ インターフェイスを作成し、マーカーをクリックしたときにテキストを表示する on tap(int index) メソッドと共にマーカーを表示することができます。ここで、テキスト (ontap メソッドを使用してマーカーをクリックした後に表示される) がクリックされたときに、別のアクティビティを開始する必要があります。これは、Google マップで場所に関するレビューやその他のものを表示する方法と同じです。バルーンアイテム化されたオーバーレイクラスの実装を検索して見つけました。

私の質問は、このバルーンアイテム化されたクラスを使用せずに同じことを行う別の方法があるかどうかです?

public class HelloItemizedOverlay extends ItemizedOverlay<OverlayItem>{
private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
private Context mContext;

public HelloItemizedOverlay(Drawable defaultMarker, Context context) {
    super(boundCenterBottom(defaultMarker));
    mContext = context;
}

public void addOverlay(OverlayItem overlay) {
    mOverlays.add(overlay);
    populate();
}

@Override
protected OverlayItem createItem(int i) {
    return mOverlays.get(i);
}

@Override
public int size() {
    return mOverlays.size();
}

@Override
protected boolean onTap(int index) {
    OverlayItem item = mOverlays.get(index);
    AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
    dialog.setTitle(item.getTitle());
    dialog.setMessage(item.getSnippet());
    dialog.show();
    return true;
}
}
4

1 に答える 1

0

あなたはこのようなことをすることができます:

LayoutInflater cancelInflater = getLayoutInflater();
dialogView = cancelInflater.inflate(R.layout.DIALOG, null);
AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
dialog.setView(dialogView);
dialogView.setOnClickListener(mViewClickListener);

ダイアログのレイアウトファイルを作成する必要があります。R.layout.DIALOG

次に、レイアウト内の個別のウィジェットのViewById()を検索し、それに応じてそれらを設定できます。

次に、onClickListenerを作成して、ダイアログがクリックされたときに実行する必要があることをすべて実行します。

于 2013-03-20T02:09:03.447 に答える