2012-11-23 3 views
4

애니메이션을 사용하여 뷰의 크기를 변경하려고하며 애니메이션의 모든 단계에서 해당 뷰 내의 이미지 뷰 이미지를 변경해야합니다. 이미지는보기 크기에 따라 달라지기 때문에 그렇게하고 싶습니다. animations: 블록에서 그렇게하려고 시도했지만 예상 한대로 각 반복마다 단 한 번만 호출 된 것으로 보입니다.UIView의 각 반복 작업을 수행하는 방법 animateWithDuration

UIView animateWithDuration:animations:을 반복 할 때마다 몇 가지 작업을 수행 할 수 있습니까? 아니면 내 문제에 대한 또 다른 해결책이 있을까요?

P. completion: 블록을 사용해 보았습니다. 그러나 이미지를 부드럽게 변경하려면 올바르게 문제를 해결하지 못합니다.

+0

보기에서 사용하는 것과 동일한 애니메이션 블록에서 이미지의 크기를 조정할 수 있습니까? –

답변

0
내가 당신에게 간단한 대답을하는 경우, 대답은 '아니오'

...

하지만 난 이것에 대한 대안 재귀처럼 호출 할 수있는 기능을 가지고 ..

-(void)animationRecursive 
{ 
    [UIView animateWithDuration:0.001 animations:^{ 
     // Here set frame slide different from last frame use incremental variables 
     // for x,y,width,height 
     //yourImageView.frame = set frame 
     //yourImageView.image = set image 
    } completion:^(BOOL finished) { 

     if(![yourImage.frame isEqualToString NSStringFromCGRect(yourFinalCGRectAfterAnimation)] 
     { 
      [self animationRecursive]; 
     } 
    }]; 

} 

희망이 의지 도와주세요 .............

관련 문제