我想创建一个手势,这样当用户双击屏幕时,所有按钮都会消失,直到再次双击....
已经搜索过高和低的答案,但我想我需要更加努力...请帮助哈哈
如果你可以明确地说明.h和.m中的内容,将非常感激。
再次抱歉这个愚蠢的问题......
答案 0 :(得分:2)
你试过button.hidden = YES;
吗?
答案 1 :(得分:0)
如果您打算让按钮有效进出,那么您可能会找到[button setAlpha:0]
和
[button setAlpha:1]
更有用,原谅粗略的例子:
- methodTheDoubleTapGuestureCalls
{
if (button.alpha == 0)
[UIView animateWithDuration:0.5 animations:^{
[button.alpha setAlpha:1];
}
}
}
如果您正在努力应对手势,那么在iOS 5中,您可以将手势识别器拖到Interface Builder中的视图上,设置您感兴趣的手势,然后将其链接到选择器。
答案 2 :(得分:0)
尝试UIGestureRecognizer
课程。
此实现将允许您识别不同的预定义用户交互。
UITapGestureRecognizer
是您需要的子类。
在您的控制器中,您可以执行以下操作:
// Do this in your viewDidLoad
// Instance variable
recognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(doubleTap)];
[recognizer setMinimumNumberOfTouches:2];
[recognizer setMaximumNumberOfTouches:2];
为按钮添加方法:
- (void) doubleTap {
//Hide/unhide buttons
}
对于按钮应首先将它们添加为出口(带有关键字IBOutlet的实例变量),然后将它们添加到视图中。 确保将它们链接起来。请参阅here。
当你链接它们时,你可以使用以下语句隐藏/取消隐藏它们。
第一个选项:
buttonOne.hidden = !buttonOne.hidden
buttonTwo.hidden = !buttonTwo.hidden
第二个选项:
//Add a instance variable hideButtons of type BOOL. I prefer this, your always sure the hidden value for each button has the same value.
hideButtons = !hideButtons
buttonOne.hidden = hideButtons
buttonTwo.hidden = hideButtons
在viewDidLoad中,您应该将hideButtons显式设置为初始值。虽然布尔值为false时不需要,但为了清楚起见,我总是这样做。
希望这有用。
答案 3 :(得分:0)
了解如何使用NSTimmer或sleep()函数在双击之间创建延迟。