2016-02-11 36 views
2

有時,當我運行應用程序,我得到了白色的屏幕。但我知道應用程序仍在運行(因爲我需要播放聲音)。iOS白屏調試

不知何故,視圖層次結構搞砸了我猜。問題是,如果我從Xcode運行,我從不會看到白屏。如果我看到,我會知道層次結構如何。

dispatch_async(dispatch_get_main_queue(), ^{ //need to run in main thread. 

self.window.rootViewController = self.defaultVC; 
[self.window makeKeyWindow]; 
self.window.hidden = NO; 

}); 

是因爲視圖層次嗎?或者其他可以產生白屏的原因?

+0

應該有很多白屏的原因..你需要提供更多的代碼和描述 –

回答

0

檢查您的複製包資源(在構建階段中找到),並確保所有.xib文件都正確列出(例如,它們的確在那裏)。

也有一個特定的原因,你是以編程方式創建該窗口,而不是使用setRootViewController?

+0

這是因爲我需要顯示一些自定義視圖的啓動屏幕(需要支持iOS 7及以上)。 –

+0

應該有很多白色屏幕的原因..你需要提供更多的代碼和描述 –

+0

我打算提供更多的代碼。問題是我真的不知道會是什麼原因導致白屏。看起來我需要複製粘貼所有代碼。 –

1

有一個叫做PonyDebugger的很棒的小工具,可以啓用基於視圖的調試。您只需將其全部放入您的項目中,並在AppDelegate中啓動它,隨時可以看到顯示的視圖。 基本上可以像「chrome F12」一樣在層次結構中執行操作。 這幫助我解決了過去的白屏問題。