我正在开发一个简单的苹果手表演示。我想在其中检查{1}按一秒钟的次数
给我一些暗示我的问题。
以下是我实施的一些代码:
UIButton
随时询问我的代码。并且还给了我一些建议。
答案 0 :(得分:1)
全局变量:
int buttonTapCounts;
viewDidLoad方法:
[self performSelector:@selector(checkCount) withObject:nil afterDelay:1.0];
UIButton事件的方法:
-(IBAction)tapButtonClicked:(id)sender
{
buttonTapCounts ++;
}
1秒后检查计数器:
-(void)checkCount
{
NSLog(@"Button tap clicked : %d times", buttonTapCounts);
// Resetting the button count
buttonTapCounts = 0;
}
答案 1 :(得分:0)
[NSTimer scheduledTimerWithTimeInterval:1.0
target:self
selector:@selector(calculateClickRate)
userInfo:nil
repeats:YES];
-(void) calculateClickRate
{
float rate = clicks;
clicks = 0;
}
答案 2 :(得分:0)
如果你在课堂上制作一个计数器和时间开始变量,就像这样
var pressesInOneSecond = 1
var timeStart: NSDate?
你可以使用类似这样的东西计算按钮按下操作的按下次数
@IBAction func buttonWasPressed(sender: AnyObject) {
if timeStart == nil {
timeStart = NSDate()
} else {
let end = NSDate()
let timeInterval: Double = end.timeIntervalSinceDate(timeStart!)
if timeInterval < 1 {
pressesInOneSecond++
} else {
// One second has elapsed and the button press count
// is now stored in pressesInOneSecond.
print("presses in one second was \(pressesInOneSecond)")
}
}
}
按钮上的计数器可以使用
重置pressesInOneSecond = 1
timeStart = nil
要说明这是如何运作的,NSDate()
会为您提供当前时间,NSTimeInterval
中记录的timeInterval
是衡量开始时间与结束时间的关系,以秒为单位。对于此示例,计数限制设置为1秒。计数从第一次按下开始,并在1秒后按下。
答案 3 :(得分:0)
感谢发布答案的人 我使用代码解决了这个问题 这是我的按钮点击方法:
- (IBAction)saveCounter {
[myAudioPlayer play];
//Send count to parent application
CurrentTime = [[NSDate date] timeIntervalSince1970] * 1000;
NSLog(@"Current Time: %f",CurrentTime);
if ((CurrentTime - StartTime) < 500)
{
myAudioPlayer.volume = myAudioPlayer.volume +0.1;
}
else
{
myAudioPlayer.volume = 0.5;
}
StartTime = CurrentTime;
//self.counter++;
}
StartTime
和CurrentTime
是double
变量。