私の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)に置き換えるにはどう すればよいですか?またはマーカーのデフォルトマーカーを拡張するにはどうすればよいですか?