我是对象 C 的新手,我有两个问题,但在 stackoverflow 上找不到答案。
我的 iOS 应用程序很简单,屏幕上只有一个按钮,如果用户点击它,它将:
播放声音
以毫秒为单位获取 2 次点击之间的时间间隔。
感谢 Owl,现在获取间隔的代码如下所示:
(长时间编码,因为我不明白什么是“UNIX 时间戳”,而且我不知道在哪里/如何使用第二个代码。)
double dt1;
double dt2;
-(IBAction)Beated:(id)sender{
If (FB == 1) {
FB = 2;
NSDate *date = [NSDate date];
NSTimeInterval ti = [date timeIntervalSince1970];
dt1 = ti;
} else {
FB = 1
NSDate *date = [NSDate date];
NSTimeInterval ti = [date timeIntervalSince1970];
dt2 = ti;
double progress;
progress = dt2 - dt1;
int timeInMs = trunc(progress * 1000);
NSLog(@"Interval %d", timeInMs);
}
}
启动应用程序后,第一次播放声音有延迟,但第一次点击后效果很好。如何停止这种滞后?
我播放声音的代码:
在.h
#import <AVFoundation/AVFoundation.h>
和
AVAudioPlayer *audioPlayer;
米
-(IBAction)Beated:(id)sender {
NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/ssn.wav", [[NSBundle mainBundle] resourcePath]]];
NSError*error;
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:$error];
audioPlayer.numberOfLoops = 0;
[audioPlayer play];
}
谢谢