从UIView动画块中的动画中排除某些动作?

时间:2011-06-13 16:32:17

标签: objective-c ios cocoa-touch uiviewanimation

我有一些代码需要在UIView动画括号内运行,但是我希望它不会被动画化,因此它的任何一侧的所有代码都是动画的,但事实并非如此。有没有办法做到这一点?

2 个答案:

答案 0 :(得分:3)

这似乎是这样的:

[UIView performWithoutAnimation:^{
    view.frame = CGRectMake(...);
}];

答案 1 :(得分:2)

没有代码可以插入到UIView动画块中以将其从动画中排除,但是您可以为任意复杂的动画链嵌套UIView动画和完成块:

[UIView animateWithDuration:0.3f animations:^ {
    // Animation Code.
} completion: ^ (BOOL finished) {
    // Non-animated code, executed after first animation block...
    // Blah;
    // [Blah blah];
    [UIView animateWithDuration:0.3f animations:^ {
        // More animation code.
    }];
}];