-2

我是 android 新手,需要一点帮助。我正在开发一个类似于谷歌地图的应用程序。我能够创建地图界面并显示标记以及点击(int index)方法以在单击标记时显示文本。现在,我需要在单击文本(使用 ontap 方法单击标记后出现)时开始另一个活动,就像我们在谷歌地图中看到关于某个位置的评论和其他内容一样。我搜索并找到了一些气球项目覆盖类的实现。

我的问题是是否有另一种方法可以在不使用这个气球项目类的情况下做同样的事情?

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

然后,您可以为布局中的单独小部件 findViewById() 并相应地填充它们。

然后创建一个 onClickListener 来执行单击对话框时需要执行的任何操作。

于 2013-03-20T02:09:03.447 回答