1. 程式人生 > >iOS 關於presentViewController彈出頁面反應遲鈍的問題

iOS 關於presentViewController彈出頁面反應遲鈍的問題

想要實現點選tableview中的一個cell,彈出一個頁面,程式碼如下:

    HSLoginViewController *loginVC = [HSLoginViewController new];
    [self presentViewController:loginVC animated:YES completion:nil];      


結果頁面彈出速度非常慢,有時幾秒鐘才能彈出,又是根本不彈出,直到在頁面上隨意再次點選一下才彈出。

將程式碼做如下修改後,問題解決:

dispatch_async(dispatch_get_main_queue(), ^{
            HSLoginViewController *loginVC = [HSLoginViewController new];
            [self presentViewController:loginVC animated:YES completion:nil];
        });


由此推斷,presentViewController這個方法有可能不是在UI執行緒執行的。