我一直在尋找一個解決方案的互聯網。我找不到任何東西。因此: 我使用的是UINavigationController。我推着兩個UIViewControllers。在第二個推視圖控制器我執行此代碼:iOS:popViewController意外行爲
- (void)reverseGeocoder:(MKReverseGeocoder *)geocoder didFailWithError:(NSError *)error {
NSLog([error localizedDescription]);
[self.navigationController popViewControllerAnimated:YES]; }
預期發生的事情將是最後推送的ViewController消失。在這個應用程序中,我在少數幾個地方這樣做,它在任何期望的ViewController中都能正常工作。 會發生什麼情況是隻有後退按鈕熄滅屏幕(動畫),但其他所有內容都保留在屏幕上。在控制檯輸出兩件事情都打印出來時這個行執行:
2011-03-14 16:32:44.580 TheAppXY [18518:207]嵌套彈出 動畫可導致損壞 導航欄
2011-03-14 16:32:53.507 TheAppXY [18518:207]以意想不到的 狀態完成導航轉換。導航欄子視圖樹 可能會損壞。
兩條錯誤消息我找不到任何信息。 我正在使用XCode 4和iOS SDK 4.3。也許任何人都可以幫助我解決這個問題。
我想我自己想通了。我認爲這是因爲我試圖過早地彈出視圖控制器。如果反向地理編碼器提供了一個地址(該地址在ViewDidLoad中啓動)並且失敗,那麼該視圖還沒有出現,所以動畫彈出不太明顯。我現在在ViewDidAppear中實現了Reverse Geocoder的開始,並且一切似乎都正常。新手錯誤或多或少。但我不知道有沒有關於它的信息 – Christoph 2011-03-14 16:18:22
最近,我遇到了同樣的問題。原因是: - 我試圖錯誤地彈出視圖控制器兩次。你可以通過在push和pop上設置斷點來檢查這個崩潰。視圖控制器 – 2014-07-31 09:07:47