“菜单 - 小工具”不会更新其界面

时间:2011-08-02 16:52:16

标签: objective-c cocoa mac-app-store

我正在尝试创建一个小的“菜单栏 - 小工具”。所以它不是一个真正的小部件,但它是一个Cocoa-Application,它在Dock中没有图标,但在菜单或状态栏中有一个图标。

您可以通过单击按钮来触发NSTimer,然后它应显示倒计时。但它没有......

- (void)update {
    NSTimeInterval interval = [endDate timeIntervalSinceNow];

    int _seconds = (int)interval%60;
    int _minutes = (((int)interval-_seconds)/60)%60;
    int _hours = ((int)interval-_seconds-_minutes*60)%3600;

    timeLeft.stringValue = [NSString stringWithFormat:@"%i:%i:%i",_hours,_minutes,_seconds];

    NSLog(@"%i:%i:%i",_hours,_minutes,_seconds);
}

那究竟发生了什么?

当我触发计时器时,界面不会更新timeLeft标签。 NSLog()也不会起作用。但如果我关闭盒子,NSLog会告诉我正确的时间,如果我再次打开盒子,它会向我展示正确的选择。但它不会再更新了,直到我再次关闭盒子。

"Menubar-Widget"

1 个答案:

答案 0 :(得分:0)

我用绝对时间(例如下午2:45)替换了相对时间......接口仍未更新,但没关系。