我有一个触发方法的按钮。此方法显示图像(由计时器隔开)并在显示一定数量的图像后停止。因此,按下按钮后需要隐藏,因此无法再次按下按钮并跳过无限循环。我会接受任何用于实现这一目标的技术,这种技术并不能完全破坏效率。
这是我的尝试:
-(IBAction)spinButton:(id)sender {
//hide spin button after press
spinButton.hidden = YES;
// The count starts at 0, so initialize "count" to 0.
count = 0;
// Use an NSTimer to call displayPic: repeatedly every 1 second ("repeats" is set to "YES")
[NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(displayPic:) userInfo:nil repeats:YES];
//show button after method has fully executed
spinButton.hidden = NO;
我无法使用上面提供的代码让按钮消失。注意:如果我遗漏了最后一行(spinButton.hidden = NO;),按下第一次按钮时按钮就会消失,而且永远不会恢复。
答案 0 :(得分:2)
你不应该只将spinButton.hidden=NO
移到displayPic
(在检查计数足够高的情况下吗?)
答案 1 :(得分:0)
您正在隐藏按钮并再次取消隐藏它。视图永远不会在两者之间更新,即使是方法将在几毫秒内执行,因此您将无法看到它。您可能希望将最后一行移动到另一个方法,例如你的displayPic:
方法。