2013-02-07 151 views
5

我正在開發iOS 5.0目標項目。一切工作正常,直到我升級我的iOS 6.1中的閃爍屏幕問題

設備版本到iOS 6.1。在這個新版本中,我面臨着一些問題,閃爍在一個

特別screen.What我做的是如下

dispatch_async(dispatch_get_main_queue(), ^{    

    [APPINSTANCE performSelector:@selector(loadFadingScreenFromController:)  
    withObject:self afterDelay:0.2];//Method in AppDelegate to for db sync 
    [APPINSTANCE setSyncFrom: @"ORDERS"]; 
}); 

//pushing a view 
OrderList *orderListObj = [[OrderList alloc] initWithNibName:@"OrderList" bundle:nil]; 
[self.navigationController pushViewController:orderListObj animated:YES]; 
self.navigationController.navigationBarHidden = NO; 

做完這些之後,我的iPhone屏幕上出現了一個非常奇怪的閃爍。這種閃爍只發生在iOS 6.1的版本中,版本低於這個效果的完美版本。任何幫助是極大的讚賞。

+0

在黑暗中拍攝這裏:或許'performSelectorOnMainThread'而不是雙'dispatch_'可能適合你。 – Maple

回答

0

我不明白你的代碼。您在主線程上使用GCD以在延遲後在另一個線程上實際執行選擇器。爲什麼不使用dispatch_after()函數?

請記住,由於併發性調用選擇器後,不會調用您的「推送視圖」代碼。

你不知道此時你OrderList視圖控制器將關於loadFadingScreenFromController推:

3

我在我的應用面臨着同樣的問題。

原因是我通過使用線程顯示警報視圖,這是閃爍屏幕的問題。

我評論說,線程顯示警報視圖,之後,我的應用程序運行良好。