0

我正在尝试设置一个运行循环,为此我有以下代码:

[[NSRunLoop currentRunLoop] addTimer:a forMode:NSEventTrackingRunLoopMode];

但是,我收到一条错误消息,提示“使用未声明的标识符 'a'”。我在我的头文件和主文件中声明了这两种方法:

//AppController.h
#import <Foundation/Foundation.h>
@interface AppController : NSObject
- (IBAction) startLoop: (id)sender;
- (void) a: (id)sender;
@end

//AppController.m
#import "AppController.h"
@implementation AppController
-(IBAction) startLoop: (id) sender {
    [[NSRunLoop currentRunLoop] addTimer:a forMode:NSEventTrackingRunLoopMode];
}
-(void) a: (id) sender {
    //Code here 
}
@end

我是 Objective-C 的新手,所以我提前为任何愚蠢的错误道歉,谢谢。

4

1 回答 1

0

addTimer::方法希望它的第一个参数是一个 NSTimer 对象。您的代码中唯一可见的(几乎)被调用a的不仅不是 NSTimer,而且根本不是对象。这是一种方法。您是否在打算使用的地方创建了计时器?

(从技术上讲,该方法的名称是a:而不是a。)

于 2012-06-18T16:54:27.463 回答