0

我一直在编写一些应用程序,并且一直在从地图中删除一个项目,这是我代码中的一个相关片段:

protected boolean onTap(final int index) {
    tapped=true;
    AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
    dialog.setTitle("Remove Item");
    dialog.setMessage("Are you sure you want to Remove this Item?");
    dialog.setNegativeButton("No", null);
    dialog.setPositiveButton("Yes", new OnClickListener() {
        @SuppressWarnings("unchecked")
        @Override
        public void onClick(DialogInterface arg0, int arg1) {
            mOverlays.remove(index);
            ItemOverlay.this.populate();
            ItemOverlay.this.setLastFocusedIndex(-1);
            ItemOverlay.this.setFocus(null);
        }
    });
    dialog.show();
    return true;
}

如您所见,我删除了被点击的项目,并确保没有焦点,但删除的项目仍然被绘制,直到用户点击屏幕的另一个点,或滚动地图。

我还应该尝试什么?

4

1 回答 1

3

你应该记得更新地图视图:

mapview.invalidate();
于 2012-08-17T08:35:21.507 回答