i have made an application in which i need to change the drawable of an overlayitem when a user clicks on it. i am using the following code to achieve this effect:
Use Setbounds api to set the bounds as follows: Edited your original code
protected boolean onTap(int index) {
OverlayItem item = mOverlays.get(index);
if(item.getTitle().equals("true")){
if(item.getMarker(OverlayItem.ITEM_STATE_FOCUSED_MASK).equals(greenMarker)){
orangeMarker.setBounds(0,0,orangeMarker.getIntrinsicWidth(),orangeMarker.getIntrinsicHeight());
item.setMarker(orangeMarker);
view1ComplainPoleList.add(item.getSnippet());
Log.i("adding",item.getSnippet());
map.invalidate();
}
else{
greenMarker.setBounds(0,0,greenMarker.getIntrinsicWidth(),greenMarker.getIntrinsicHeight());
item.setMarker(greenMarker);
view1ComplainPoleList.remove(item.getSnippet());
Log.i("removing",item.getSnippet());
map.invalidate();
}
}
return true;
}