2014-09-29 75 views
-1

我想在視圖上有動畫,它會在x上右2像素,在x上左2像素。UIView動畫移動和返回

我有這樣的不透明度,和我期待來調整這使得它,

CABasicAnimation *theAnimation; 

    theAnimation=[CABasicAnimation animationWithKeyPath:@"opacity"]; 
    theAnimation.duration=1.0; 
    theAnimation.repeatCount=HUGE_VALF; 
    theAnimation.autoreverses=YES; 
    theAnimation.fromValue=[NSNumber numberWithFloat:1.0]; 
    theAnimation.toValue=[NSNumber numberWithFloat:0.3]; 
    [image.layer addAnimation:theAnimation forKey:@"animateOpacity"]; 

回答

2

如果你只是想發生一次動畫,那麼你可以跳起來抽象的幾級,並使用基於塊視圖動畫

[UIView animateWithDuration:1.f 
         delay:0 
        options:UIViewAnimationOptionAutoreverse 
       animations:^{ 
        view.transform = CGAffineTransformMakeTranslation(2.f, 0.f); 
       } completion:^(BOOL finished) { 
        view.transform = CGAffineTransformIdentity; 
       }]; 

這適用於兩點的正確翻譯,然後刪除它完成

+0

兩點,而不是兩個像素。 – 2014-09-29 18:55:29

+0

@robmayoff更新 – 2014-09-29 18:57:01

+0

謝謝,但我需要永遠重複。 – Curnelious 2014-09-29 19:01:31