2010-11-01 26 views
0

我做了一些計算併發,但我想動畫顯示的結果。 例如。單擊按鈕,發佈NSInvocationOperation或異步nsnotification以執行計算。同時視圖轉移到另一個視圖。 如何在新視圖中動畫顯示計算結果。ios動畫結果的背景或併發計算

有時計算在視圖處於前景(viewDidAppear)之前完成,在這種情況下動畫不可見。

如果我標記完成計算並在viewDidAppear中執行動畫,有時計算完成 viewDidAppear已被調用。

什麼是正確的方法來做到這一點。 正在執行一個performSelector:withObject:afterDelay:長時間的延遲感覺就像一個乞求競爭條件的黑客。

+0

那你到底想要的是什麼? – tia 2010-11-01 02:11:42

+0

我應該解釋說,點擊一個按鈕會導致在後臺執行計算,以及轉換到另一個視圖的視圖。我希望新視圖中的標籤在顯示結果時進行動畫製作。 – sam 2010-11-02 10:03:37

回答

0

狀態變量可以實現這一點。在您的標題:

@property BOOL viewIsVisible; 

而且在您的實現:

@synthesize viewIsVisible; 

- (void) viewDidLoad 
{ 
    [super viewDidLoad]; 
    viewIsVisible = NO; 
} 

- (void) viewDidAppear:(BOOL)animated 
{ 
    [super viewDidAppear:animated]; 
    viewIsVisible = YES; 
} 

- (void) viewWillDisappear:(BOOL)animated 
{ 
    [super viewWillDisappear:animated]; 
    viewIsVisible = NO; 
} 

將這項工作?我不確定你是如何設置KVO的。