2013-11-28 18 views
2

廣東話變焦區分,如果用戶或縮小使用scaleGestureDetector微分進出的scalegesturedetector安卓

mZoomGestureDetector = new ScaleGestureDetector(getActivity(), new OnScaleGestureListener() 
     { 

      int intFactor=0; 
      boolean firstVisited = false; 

      private float mScaleFactor2; 
      private float currectScale= -100; 
      private float startScale; 
      private float endScale; 

      @Override 
      public void onScaleEnd(ScaleGestureDetector detector) 
      { 
       endScale = detector.getScaleFactor(); 

//this condition does not pass. not > or < succeeds 
       if (startScale > endScale) { 
        Log.i("onScaleEnd", "Pinch Dection"); 
       } else if (startScale < endScale) { 
        Log.i("onScaleEnd", "Zoom Dection"); 
       } 
       setFontSize(intFactor); 

      } 


      @Override 
      public boolean onScaleBegin(ScaleGestureDetector detector) 
      { 

       startScale = detector.getScaleFactor(); 

       return true; 
      } 

      @Override 
      public boolean onScale(ScaleGestureDetector detector) 
      { 
       //Log.i("ScaleFactor", "Scale Factor original " + detector.getScaleFactor()); 

       mScaleFactor = detector.getScaleFactor() * 100; 



       Log.i("ScaleFactor", "Scale Factor : On " + mScaleFactor); 

       intFactor = (int) mScaleFactor; 


       return true; 
      } 
     }); 
     ; 

回答

4

縮放之間我解決了它如下:

  @Override 
      public boolean onScale(ScaleGestureDetector detector) 
      { 

       double scaleFactor = detector.getScaleFactor(); 
       if (1.0f > scaleFactor) { 
        mode = 0;//Log.i("ScaleFactor", "Pinch Dection"); 
       } else { 
        mode = 1;//Log.i("onScaleEnd", "Zoom Dection"); 
       } 

} 
+0

實在是太sensitvie,你怎麼能降低靈敏度? – HendraWD