我怎样才能让 NSTimer 在用户在应用程序中的整个时间内运行?
我希望能够更改视图控制器并执行不同的功能,同时计时器在后台运行。如果计时器达到 0,那么我想触发一个事件。当应用程序在后台时,我还可以在应用程序内部设置一个计时器吗?甚至当 iPhone 的屏幕关闭时?
感谢您的回答!
我怎样才能让 NSTimer 在用户在应用程序中的整个时间内运行?
我希望能够更改视图控制器并执行不同的功能,同时计时器在后台运行。如果计时器达到 0,那么我想触发一个事件。当应用程序在后台时,我还可以在应用程序内部设置一个计时器吗?甚至当 iPhone 的屏幕关闭时?
感谢您的回答!
在 Appdelegate 中执行这段代码,使计时器成为它的属性。
self.timer = [NSTimer scheduledTimerWithTimeInterval:intervalForTimer
target: self
selector: @selector(timerExpired:)
userInfo: nil
repeats: NO];
//Run the timer on the runloop to ensure that it works when app is in background
[[NSRunLoop currentRunLoop]addTimer:self.timer forMode: NSDefaultRunLoopMode];
在应用委托中运行此方法
-(void) timerfunc{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
timer = [NSTimer scheduledTimerWithTimeInterval:(0.5) target:self selector:@selector(yourfunction) userInfo:nil repeats:YES ];
[pool release];
}