public void onZoomLevelChange(final int newZoomLevel) { // to allow changing zoom level programmatically, i.e. not just // by user interaction if (AndroidUtil.currentThreadIsUiThread()) { changeZoomControls(newZoomLevel); } else { this.mapView.post( new Runnable() { @Override public void run() { changeZoomControls(newZoomLevel); } }); } }