OSMDroid: ejemplo onTap

Empecé a estudiar Android hace unas semanas y ahora necesito tu ayuda. Mi tarea es crear un mapa fuera de línea (utilizando OSMDroid y Mobile Atlas Creator), con dos marcadores, una ruta entre ellos y alguna actividad después de hacer clic en estos marcadores. He hecho mapa, marcadores y camino. Aquí está el código (Android 2.3.3):

Clase pública MainActivity extiende la actividad {

private MapView mapView;
LocationManager locationManager;
ArrayList<OverlayItem> overlayItemArray;

@Override
public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    mapView = new MapView(this, 256);
    mapView.setClickable(true);
    mapView.setBuiltInZoomControls(true);
    mapView.getController().setZoom(15); 
    mapView.getController().setCenter(new GeoPoint(54.332, 48.389));  
    mapView.setUseDataConnection(false);

    overlayItemArray = new ArrayList<OverlayItem>();        
    OverlayItem olItem = new OverlayItem("Here", "SampleDescription", new GeoPoint(54.332, 48.389));       
    overlayItemArray.add(olItem);
    overlayItemArray.add(new OverlayItem("Hi", "You're here", new GeoPoint(54.327, 48.389)));

    PathOverlay myPath = new PathOverlay(Color.RED, this);
    myPath.addPoint(new GeoPoint(54.327, 48.389));
    myPath.addPoint(new GeoPoint(54.332, 48.389));
    mapView.getOverlays().add(myPath);

DefaultResourceProxyImpl defaultResourceProxyImpl = new DefaultResourceProxyImpl(this);
ItemizedIconOverlay<OverlayItem> myItemizedIconOverlay  = new ItemizedIconOverlay<OverlayItem>(overlayItemArray, null, defaultResourceProxyImpl);
    mapView.getOverlays().add(myItemizedIconOverlay);

    setContentView(mapView); //displaying the MapView
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}    

} Pregunta: ¿Cómo realizar el método onClick para estos marcadores? Y una pregunta adicional para profy: ¿cómo hacerlo bien (me refiero a cómo dividir este programa por clases)? ¡Muchas gracias! =)

Respuestas a la pregunta(1)

Su respuesta a la pregunta