1

我在这个论坛上进行了搜索,发现了有关 NSProgressIndicator 的各种信息,但可惜没有什么能特别帮助我。不过,这似乎是一个热门话题。这是我的问题。直到今天,我的确定条形指示器工作正常,但突然之间,它在第一次平稳运行后就停止了动画。这是我的代码

-(void) someMethod;    
{
    // Setup the progress indicator 
    double progressValue = 0.0;
    [self.progressBar setBezeled:YES];
    [self.progressBar setDoubleValue:progressValue];
    [self.progressBar setMaxValue: (double) maxCount];

    for(int i=0, i<=maxCount-1; i++)
    {
       ///Lots of stuff in the loop

       // Increment progressIndicator
       progressValue +=1;
       [self.progressBar setHidden:NO];
       [self.progressBar setDoubleValue: progressValue];
       NSLog(@"%f",[self.progressBar doubleValue]);
       [self.progressBar displayIfNeeded];
     }

     [self.progressBar setHidden:YES];
}

请注意,我明确使用 setHidden:YES 和 setHidden:NO 因为我已经无法让 displayWhenStopped 正常工作。当我在日志中检查progressBar.doubleValue 的实际值时,它确实会增加它应该增加的值。看起来好像 displayIfNeeded 方法突然停止工作了。就像我说的,它第一次正常工作,然后显示条形图,增加一到两次,然后卡住。其余的代码和循环继续正常并自行完成。

有没有人有任何想法或线索?我怀疑它可能与我一无所知的线程有关。任何帮助都会很棒。提前感谢您的帮助!

4

0 回答 0