来自 viewcontroller.m 文件
-(void) hitButton
{
current = [NSDate date];
interval = [current timeIntervalSinceDate:last];
rate = 60 / (double)interval;
last = current;
NSString *output = [NSString stringWithFormat:@"%d bpm",rate];
[btnout setTitle:output forState:UIControlStateNormal];
}
- (void)viewDidLoad {
last = [[NSDate alloc] init];
current = [[NSDate alloc] init];
[super viewDidLoad];
}
从 Viewcontroller 头文件
@interface RateAnalyserViewController : UIViewController {
double interval;
int rate;
NSDate *current;
NSDate *last;
IBOutlet UIButton *btnhit;
IBOutlet UIButton *btnout;
}
@property (nonatomic, retain) UIButton *btnhit;
@property (nonatomic, retain) UIButton *btnout;
-(IBAction) hitButton;
@end
嗨,我正在尝试制作一个简单的应用程序,以 BPM 显示某人按下按钮的速率。
出于某种原因,该应用程序在第一次按下时运行良好,但第二次崩溃。没有任何例外或任何信息说明原因。我已经使用 NSLogs 来验证 hitButton 方法是否被第二次调用,并确定程序在 @current = [NSDate date] 时崩溃。
任何帮助,将不胜感激。对不起,如果我错过了什么。我是 OO 语言的新手。
谢谢,乔恩