2012-09-03 5 views
0

격자보기를 수평 방향으로 초점 이동하는 방법이 있습니까? 나는 이미지에 그리드 뷰를 구현하고있다. 그래서 내가 확대 할 때마다 이미지 그리드는 모든 방향으로 줌과 팬이되어야하므로 이미지의 특정 영역을 선택할 수 있습니다.격자 이미지에서

나는 그리드 패닝에 대한 봤지만 만족스러운 답변을 얻지 못했습니다. 몇 가지 예제 코드로 도와주세요.

답변

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); 
     } 
    } 

이 방법의 크기를 조절할 뷰 호출 될 때마다 시간과 차원이 저장됩니다 : 여기

는이 작업을 수행 할 수있는 방법입니다. 즉석 확대 효과를주기 위해 애니메이션 기간을 줄일 수 있습니다. 이제이 메소드를 Pan 또는 onTouch에서 호출하여 확대/축소를 적용 할 수 있습니다.

도움이되기를 바랍니다.