2012-02-11 48 views
1

運行我的應用程序時,我收到錯誤,指出正在發送輪換通知並導致應用程序崩潰。有沒有一種方法,我可以停止發送,看看我是否能阻止崩潰的所有旋轉的事件。還有一個很好的概述如何處理這些事件。我必須在控制器或所有視圖中分別處理它們嗎?目前,我很樂意鎖定肖像。我試過調用[[UIDevice currentDevice] endGenerating Device OrientationNotifications]; 但我仍然獲取設備方向DidChange事件無法識別選擇器發送到實例停止設備方向

回答

1

您不能停止輪換通知,也不應該嘗試。

通知不會導致您的崩潰,您必須在那裏有一些錯誤的代碼。

從控制檯和視圖控制器的代碼粘貼您的確切錯誤發生的地方。我的猜測是你已經寫了一個循環處理程序方法,它不起作用,可能沒有意識到它。

您可以通過創建具有此方法的視圖控制器的基類,然後用它作爲父類的所有其他視圖控制器鎖定在縱向:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation 
{ 
    return toInterfaceOrientation == UIInterfaceOrientationPortrait; 
} 
+0

感謝尼克,我一直在回頭看什麼我最近改變了,我添加了一個臨時的uiview,試圖讓MBProgressHUD工作,我在使用後刪除了這個視圖,但它似乎仍然被髮送了一個通知(我發現了代碼並沒有崩潰,我應該刪除通知對於這個視圖? – Ian 2012-02-11 10:23:32

+0

如果你不使用它們,你需要擺脫任何有關旋轉的NSNotification處理程序 – 2012-02-11 11:04:03

+0

評論HUB返回並註釋掉所有'方向'回調和我仍然崩潰。我假設這是我在實施HUD內容時所寫的內容。謝謝。 – Ian 2012-02-11 11:48:22