nan*_*ome 7 cocoa objective-c nstimer
我正在开发一个简单的计时器应用程序,我已经创建了一个带菜单的NSStatusItem,我有一些NSTextField标签可以更新计时器标签(http://cld.ly/e81dqm),但是当我点击状态项时NSTimer停止(并停止更新标签).....我怎样才能解决这个问题?
编辑:这是启动计时器的代码:
timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(timerDidUpdate:) userInfo:nil repeats:YES];
小智 11
您应该将计时器添加到MainRunLoop中,如下所示:
NSRunLoop * rl = [NSRunLoop mainRunLoop];
[rl addTimer:timer forMode:NSRunLoopCommonModes];
Run Code Online (Sandbox Code Playgroud)
我猜一旦您停止与 NSStatusItem 交互,计时器就会恢复?(菜单关闭并释放鼠标按钮后)。
用户交互将主运行循环置于不更新计时器的模式,因此如果您的标签必须不断更新,您可能需要将 NSTimer 和标签绘图移动到单独的进程或另一个线程。
| 归档时间: |
|
| 查看次数: |
815 次 |
| 最近记录: |