자바에서 콜백 처리를 하기 위해서는 인터페이스를 사용해야 한다.
인터페이스는 아래처럼 정의 할 수 있다.
1: interface onTapCallback {
2: void onTap(GeoPoint p, MapView mapView);
3: }
호출할 함수 원형을 인터페이스에서 정의 하였으면 인터페이스 변수를 선언해야 한다.
1: private onTapCallback cbOnTap = null;
인터페이스 변수를 선언하였다면 인터페이스 변수를 외부에서 할당 할 수 있게 set 함수를 만들어 준다.
1: public void setOnTapCallback(onTapCallback cb) {
2: cbOnTap = cb;
3: }
실제 콜백을 호출해야 할 함수에서 다음과 같이 할당이 되었는지 확인 후 호출 한다.
1: if (null != cbOnTap) cbOnTap.onTap(p, mapView);
간단한 콜백 사용 예제는 다음과 같다.
1: onTapCallback cb = new onTapCallback() {
2:
3: @Override
4: public void onTap(GeoPoint p, MapView mapView) {
5: CenterLocation(p);
6: }
7: };
8:
9: il.setOnTapCallback(cb);