我想让一个按钮在点击后消失。我知道我可以使用
_myButon.hidden = TRUE;
...完全隐藏一个按钮,但感觉突然和刺耳。我也知道我可以依次降低 alpha 或其他东西,但不知道如何在短时间内自动实现。
有人可以给我一个提示,如何在使用最简单的方式单击按钮后淡出按钮吗?我希望效果看起来像一个简单的“淡出”PowerPoint演示文稿或其他东西:)
谢谢!
[UIView animateWithDuration:0.5 animations:^{
_myButton.alpha = 0;
}];
与其移除按钮,不如隐藏它。考虑到所有建议,您会得到:
[UIView animateWithDuration:0.5
animations:^{ _myButton.alpha = 0; }
completion:^(BOOL finished){ _myButton.hidden = YES; }
];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0];
_myButton.alpha = 0.0f;
[UIView commitAnimations];
或者
[UIView animateWithDuration:1.0 animations:^{
_myButton.alpha = 0.0f;
}];
仅仅降低 alpha 不会使您的按钮完全从您的视图中移除。对用户来说,它看起来像是消失了,但它仍然存在。他们可能仍然会在不知情的情况下意外点击它。因此,您可以做一个计时器,在它消失后将其从视图中移除。
...
//alpha animation
//remove from view
timer1 = [NSTimer scheduledTimerWithTimeInterval:1.5 target:self selector:@selector(hideMyButton) userInfo:nil repeats:NO];
}
-(IBAction) hideMyButton
{
[_myButon removeFromSuperview];
}