ViewPager를 사용해서 이미지 갤러리를 구현하려고 합니다.


현재 currentItem 이미지에 멀티 터치로 Image Zoom 기능을 구현하고 싶은데요.


터치 이벤트는 받아오는데 Image Zoom이 안됩니다.


제가 잘못 구현한걸까요?? 


View v = null;

ImageView imageVIew = null;


@Override

public Object instantiateItem( ... ){


v = mInflater.inflate(R.layout.test, null);

imageVIew = (ImageView)v.findViewById(R.id.imageVIew);

        imageView.setOnTouchListener(zoomTouch);

        imageView.setBackgroundResource(R.drawable.test);


((ViewPager)mPager).addView(v,0);


return v;


View.OnTouchListener zoomTouch = new View.OnTouchListener() {

@Override

public boolean onTouch(View v, MotionEvent event) {

// TODO Auto-generated method stub

ImageView imageView = (ImageView)v;

     switch (event.getAction() & MotionEvent.ACTION_MASK) {

       case MotionEvent.ACTION_DOWN:

          savedMatrix.set(matrix);

          start.set(event.getX(), event.getY());

          mode = DRAG;

          break;

       case MotionEvent.ACTION_POINTER_DOWN:

          oldDist = spacing(event);

          if (oldDist > 10f) {

             savedMatrix.set(matrix);

             midPoint(mid, event);

             mode = ZOOM;

          }

          break;

      case MotionEvent.ACTION_UP:


      case MotionEvent.ACTION_POINTER_UP:

          mode = NONE;

          break;

       case MotionEvent.ACTION_MOVE:

          if (mode == DRAG) {

             matrix.set(savedMatrix);

            matrix.postTranslate(event.getX() - start.x, event.getY() - start.y);


          }

          else if (mode == ZOOM) {

             float newDist = spacing(event);

             if (newDist > 10f) {

                matrix.set(savedMatrix);

                float scale = newDist / oldDist;

                matrix.postScale(scale, scale, mid.x, mid.y);

             }

          }

          break;

       } 

 

   // 매트릭스 값 튜닝.

        imageView.setImageMatrix(matrix);


    return true;

}

};


아시는 분 계시면 알려주세요 ㅠㅠ