我新建了一个项目,取名 yiqi,项目生成了一个yiqiViewController.xib的文件,通过IB,我加入了一个label,默认文字是“welcome”,ID是showtxt,已经通过File's Owner指向了,然后我在yiqiViewController.m的文件中写入下面的代码,目的是为了过5秒钟,这个welcome文字变成 1234
@implementation yiqiViewController- (void) applicationDidFinishLaunching: (id) unused
{ NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector (onTimer:) userInfo:nil repeats:NO];}- (void)onTimer:(NSTimer*)timer {
[showtxt setText:@"1234"];
}@end现在遇到两个问题
一:有个黄色的警告,提示说 warning: unused variable 'timer' (文中加红色的这行)二:过了五秒后,label显示的,还是 welcome,而不是1234请问这段代码出错在什么地方呢?
@implementation yiqiViewController- (void) applicationDidFinishLaunching: (id) unused
{ NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector (onTimer:) userInfo:nil repeats:NO];}- (void)onTimer:(NSTimer*)timer {
[showtxt setText:@"1234"];
}@end现在遇到两个问题
一:有个黄色的警告,提示说 warning: unused variable 'timer' (文中加红色的这行)二:过了五秒后,label显示的,还是 welcome,而不是1234请问这段代码出错在什么地方呢?
timer 的开始是不是有个 start 方法。查 Apple 的文档。
你debug下,生成timer是那句是否被运行了?建议你用 -(void)viewDidLoad or -(void)viewWillAppear: 等applicationDidFinishLaunching:应该是appDelegate里的。
timer = nil; // 确保你没有 invalidate 一个正在使用的 timer !