2

私のAndroidマップアプリケーションでは、タッチイベントでマーカーを置き換えようとしています.これは私のオーバーレイアイテムクラスであり、メインクラスで定義された私のデフォルトマーカーです.

public class MyItemizedOverlay extends ItemizedOverlay<OverlayItem> {

Bitmap marker = BitmapFactory.decodeResource( null, R.drawable.image_pin);//Replace with this marker

private ArrayList<OverlayItem> myOverlaysNormal ;



Context mContext;


public MyItemizedOverlay(Drawable defaultMarker) {
    super(boundCenterBottom(defaultMarker));
    myOverlaysNormal = new ArrayList<OverlayItem>();
    populate();

}

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

@Override
protected OverlayItem createItem(int i) {
    return myOverlaysNormal.get(i);
}
@Override
protected boolean onTap(int index) {

myOverlaysNormal.get(index).getPoint();


return true;
}

// Removes overlay item i
public void removeItem(int i){
    myOverlaysNormal.remove(i);

    populate();
}

// Returns present number of items in list
@Override
public int size() {
    return myOverlaysNormal.size();
}


public void addOverlayItem(OverlayItem overlayItem) {
    myOverlaysNormal.add(overlayItem);
    populate();
}



}

タッチされたマーカーを別のマーカー(R.Drawable.image_pin)に置き換えるにはどう すればよいですか?またはマーカーのデフォルトマーカーを拡張するにはどうすればよいですか?

4

1 に答える 1

1

それを行うには複数の方法があります。コードを支援できることを願っていますが、よく検索してよく読む必要があります。

ここでいくつかのリンクが役立ちます:

最初の例

2例

于 2012-11-09T12:48:41.033 に答える