动画代码没有动画?

时间:2010-02-28 11:31:59

标签: iphone objective-c

我有一个视图,我有一个按钮调用以下方法。视图隐藏/显示但没有任何动画

- (void) displayEvent:(id)sender {

    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:2.5];
    modal.hidden = !modal.hidden;
    [UIView commitAnimations];
}

有什么想法吗?

1 个答案:

答案 0 :(得分:4)

隐藏和非隐藏之间没有状态。如何动画?

要获得淡入效果,您应该修改alpha属性。

- (void) displayEvent:(id)sender {
    BOOL wasHidden = modal.hidden;
    modal.hidden = ! wasHidden;
    modal.alpha = ! wasHidden; // wasHidden ? 0 : 1;
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:2.5];
    modal.alpha = wasHidden; // wasHidden ? 1 : 0;    
    [UIView commitAnimations];
}
相关问题