자바에서 콜백 처리를 위한 리스너


자바에서 콜백 처리를 하기 위해서는 인터페이스를 사용해야 한다.

인터페이스는 아래처럼 정의 할 수 있다.
   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);

댓글

이 블로그의 인기 게시물

ViewPager offscreenPageLimit 메모리 상태

ASP에서 C# 언어로 만든 DLL 호출

eskimo esim 사용기 - 일본 / 오사카(23/08/06 ~ 23/08/08)