4

我想让一个按钮在点击后消失。我知道我可以使用

_myButon.hidden = TRUE;

...完全隐藏一个按钮,但感觉突然和刺耳。我也知道我可以依次降低 alpha 或其他东西,但不知道如何在短时间内自动实现。

有人可以给我一个提示,如何在使用最简单的方式单击按钮后淡出按钮吗?我希望效果看起来像一个简单的“淡出”PowerPoint演示文稿或其他东西:)

谢谢!

4

4 回答 4

8
[UIView animateWithDuration:0.5 animations:^{
    _myButton.alpha = 0;
}];
于 2013-07-03T00:52:57.447 回答
4

与其移除按钮,不如隐藏它。考虑到所有建议,您会得到:

[UIView animateWithDuration:0.5
                 animations:^{ _myButton.alpha = 0; }
                  completion:^(BOOL finished){ _myButton.hidden = YES; }
];
于 2013-07-03T01:49:50.743 回答
2
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0];
_myButton.alpha = 0.0f;
[UIView commitAnimations];

或者

[UIView animateWithDuration:1.0 animations:^{
    _myButton.alpha = 0.0f;
}];
于 2013-07-03T00:35:22.703 回答
1

仅仅降低 alpha 不会使您的按钮完全从您的视图中移除。对用户来说,它看起来像是消失了,但它仍然存在。他们可能仍然会在不知情的情况下意外点击它。因此,您可以做一个计时器,在它消失后将其从视图中移除。

...
  //alpha animation

//remove from view
    timer1 = [NSTimer scheduledTimerWithTimeInterval:1.5 target:self selector:@selector(hideMyButton) userInfo:nil repeats:NO];
}

    -(IBAction) hideMyButton
    {
           [_myButon removeFromSuperview];
    }
于 2013-07-03T01:14:14.860 回答