2012-09-03 93 views
0

有沒有辦法將網格視圖平移到水平方向。我正在圖像上實施網格視圖。所以,無論何時我放大圖像網格也應該進行縮放和全方位平移,因此我可以選擇圖像的特定區域。在圖像上的網格

我google搜索網格,但沒有得到滿意的答案。請用一些示例代碼來幫助我。

回答

0

我也搜索了一些縮放除圖像視圖以外的視圖的標準方法,但沒有找到任何東西。所以,我爲此做了一個解決方法,它工作。
對於縮放視圖,可以在啓用fillAfter屬性的情況下對視圖應用縮放動畫。

這裏是你如何能做到這一點:

ScaleAnimation scale; 
    final float MAX_SCALE_FACTOR = 5f; 
    float currentScaleFactor = 1; 
    public static final long DURATION = 500; 

    GridView grid = (GridView)findViewById(R.id.grid); 


    public void scaleMyView() 
    { 
     if(currentScaleFactor <= MAX_SCALE_FACTOR) 
     { 
      DecelerateInterpolator interpolator = new DecelerateInterpolator(); 
      scale = new ScaleAnimation(currentScaleFactor, currentScaleFactor*1.2f, 
          currentScaleFactor, currentScaleFactor*1.2f); 
      currentScaleFactor *= 1.2; 
      scale.setDuration(DURATION); 
      scale.setInterpolator(interpolator); 
      scale.setFillEnabled(true); 
      scale.setFillAfter(true); 

      grid.startAnimation(scale); 
     } 
    } 

這裏每個調用此方法進行縮放視圖時間和尺寸進行保存。您可以縮短動畫持續時間以發揮即時縮放的效果。現在,您可以在onPan或onTouch上調用此方法來應用縮放。

我希望這會有所幫助。