2

我是 Objective-C 编程的新手,并且掌握了一些 C++。作为我的第一个程序之一,我正在尝试制作一个可以记录用户心率的相当简单的应用程序。

我创建了一个类来存储所有这些信息(称为 HeartRate),我想从中创建一个对象。但是,我在范围和初始化对象方面遇到问题。我正在尝试在名为“buttonPressed”的方法中对其进行初始化,但在此函数之外无法访问该对象。

我研究过使用 AppDelgate,但运气不佳 - 就像我提到的,我是 Objective-C 的初学者,所以可能可以完成,但我不知道该怎么做。

我在哪里可以安全地初始化它,以便其他功能可以访问它?

如果你们希望我发布任何代码或更详细地解释,我会很高兴。

这是 IBAction 的代码:

-(IBAction)buttonPressed:(id)sender{
HeartRate *HR = [[HeartRate alloc]init];
int beats = [HR getBeats];
[HR setBeats:(beats+1)];
NSString *outputBeats = [NSString stringWithFormat: @"%i", [HR getBeats]];
beatsText_.text = outputBeats;
4

1 回答 1

1

将对象声明为实例变量,以便在包含 HeartRate 的类中的任何位置访问它:

@interface AppDelegate: NSObject <UIApplicationDelegate> {
    HeartRate *rate;
}

@end

@implementation AppDelegate

- (void)buttonPressed {
    rate = [[HeartRate alloc] init];
    // etc.
}

@end
于 2012-08-16T22:16:00.093 回答