我在UIButtons
中有10 UIViewController
。我想要实现的是:当用户点击任意4个按钮(它可以是4个不同的按钮或2个按钮,但总共按4次)时,它会触发一个特定的方法。该方法应在第4次 TouchUpInside 事件被触发后立即触发,无论是否有4个不同的按钮。它应该从几个按钮计算 TouchUpInside 并触发一个方法。
任何帮助都将受到高度赞赏。谢谢!
答案 0 :(得分:3)
您需要创建一个简单的点按计数器!
首先在标题中创建integer
,然后创建一个IBAction
,您可以为每个按钮指定。{/ p>
IBAction
应包含以下内容:
-(IBAction)BtnTapped:(id)sender {
[self tappedBtn];
[self checkNumber];
}
如果你没有使用IB,那么只需在viewDidLoad中粘贴这行代码:
[yourBtn addTarget:self action:@selector(BtnTapped:) forControlEvents:UIControlEventTouchUpInside];
以获得更高的触摸次数:
-(void)tappedEgg{
//currentValue is an int declared in the header file (look below)
currentValue = currentValue +1;
NSLog(@"%i",currentValue);
}
并查看数字:
-(void)checkNumber{
if (currentValue == 4) {
NSLog(@"Reached 4");
//Put in your action
}
}
在#import
下面的标题文件中执行:
int currentValue;
应该这样做!
问候!
答案 1 :(得分:0)
将int ivar添加到视图控制器中,并在每次点击按钮时将其增加1。此外,在点按处理程序中,检查当前计数,如果它等于4,请调用您的方法。