延迟发射一个又一个动画

时间:2012-12-02 19:43:53

标签: objective-c ios xcode animation

我有两个同时淡入显示的对象,最初设置为hidden,我想在第一个动画之后的几秒钟内触发第二个动画,但它们都同时淡入?

_text.alpha = 0;

_text.hidden = NO;

[UIView animateWithDuration:1.9 animations:^{
   _text.alpha = 1;


}];

////////////second animation

_note.alpha = 0;

_note.hidden = NO;

[UIView setAnimationDelay:2.0];

[UIView animateWithDuration:1.9 animations:^{
    _note.alpha = 1;


}];

2 个答案:

答案 0 :(得分:4)

试试这个:

[UIView animateWithDuration:1.9 animations:^{
    _text.alpha = 1;    
} completion:^(BOOL finished) {

    [UIView animateWithDuration:1.9 animations:^{
       _note.alpha = 1;
    }];

}];

第一个动画结束时,第二个块被调用。

答案 1 :(得分:2)

使用apple docs中所述的animateWithDuration:animations:completion:方法。将第二个动画放入第一个动画的完成块中。