2011-11-29 60 views
2

我有一個奇怪的錯誤,似乎與操作系統有關:如果我在操作系統控制的啓動畫面Default.png中給我的設備發送睡眠中斷,被顯示,然後立即喚醒設備,我得到一個黑屏,直到調用applicationDidFinishLaunching:,操作系統將控制權交給我的應用程序。在啓動畫面中睡眠中斷後,iPhone返回黑屏

這將是很好,如果在喚醒設備後,Default.png仍然正常顯示。我放了一些日誌來查看中斷處理程序(applicationWillResignActive:等)何時被調用,但他們從來不會這樣做 - 我認爲中斷髮生得太快。

有關如何避免返回黑屏的任何想法?

在此先感謝!

回答

1

您無法控制啓動畫面將顯示多長時間。 Default.png文件將在應用程序設置時顯示,但會在應用程序準備啓動後立即消失。

如果您需要更多時間來完成加載,您應該創建另一個視圖,看起來像您控制的啓動畫面。

只要知道蘋果是如何使用啓動畫面有刺的。他們認爲你的應用程序不應該有一個。所以要小心你坐在空白/閃屏上多久。顯示進度視圖或活動指示器,讓用戶知道您還沒有墜毀並仍在工作。

+0

我想這不是_Ian_詢問的問題。想象一下,你在調用'UIApplicationMain()'之前先把'sleep(10)'放進去。你會看到啓動畫面。然後你打斷你的應用程序。然後你醒來並解鎖屏幕(「睡眠(10);'還沒有回來)。我在iPod上檢查過它;的確,沒有閃屏了...... – debleek63

+0

謝謝,比爾。睡眠/喚醒發生在應用程序完成設置之前。我希望操作系統能夠看到應用程序沒有完成設置並再次顯示啓動畫面,但它沒有。它只是在黑屏上,直到應用程序完成設置,然後我的應用程序接管並繼續它應該。你告訴我的是,這是100%的操作系統,我無法做任何事情,我相信。那是對的嗎? – Ian

+0

是的。啓動畫面只應該是應用程序設置時的臨時佔位符。如果看起來不正確,或者沒有完成足夠快的速度,我會創建一個登錄頁面向用戶顯示您仍在加載。看起來比黑色屏幕好。 (當你提交給App Store時黑屏可能會被拒絕)祝你好運。 –