2013-02-07 15 views
5

私はiOS 5.0ターゲットプロジェクトに取り組んでいます。私はこの新しいバージョン.INのiOS 6.1への私のiOS 6.1で画面がちらつく

デバイスのバージョンをアップグレードするまで、すべてが私は私がやっている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

ここでは暗闇の中で撮影しています:恐らく、 'dispatch_'のダブルではなく' performSelectorOnMainThread'が効果的かもしれません。 – Maple

答えて

0

あなたのコードはあまりありません。メインスレッドでGCDを使用しているため、遅延の後に別のスレッドでセレクタを実際に実行しています。なぜdispatch_after()関数を使用しないのですか?

同時性のためにセレクタが呼び出された直後には、「ビューをプッシュする」コードは呼び出されないことに注意してください。

あなたのオーダーリストビューコントローラはloadFadingScreenFromControllerに関してプッシュされようとしているその時点で知っていない:

3

私は自分のアプリケーションで同じ問題に直面しました。

原因スレッドを使用してアラートビューを表示していたため、画面がちらつくという問題でした。

私はそのスレッドにアラートビューを表示するようにコメントしました。その後、アプリケーションは正常に動作しています。

関連する問題