我在寫一個基於UINavigationController的iPhone應用程序。我從服務器提取數據,有時會返回虛假鏈接。我通過推動webview viewcontroller打開每個鏈接。我想能夠包含一些錯誤處理。我知道這個鏈接是不是很好。所以我希望能夠在我知道我的webview遇到錯誤時立即彈出webview視圖控制器。當我使用popViewControllerAnimated獲取空視圖和空白導航欄
目前,我使用下面的代碼嘗試:
[self.navigationController popViewControllerAnimated:YES];
然後我得到它什麼都不顯示導航欄,但如果我點擊那裏的「後退」按鈕應該是它適當地操作。當我點擊「後退」按鈕時,標題會彈出。即使我彈出回到UITableViewController,視圖控制器通常在其中顯示內容的視圖也是空白的。
我已經試過這作爲一種解決方法:
UINavigationController *nav = self.navigationController;
[self.navigationController popViewControllerAnimated:YES];
[nav.visibleViewController.view setNeedsDisplay];
我檢查的的UINavigationController的viewControllers陣列,它有在它的右側viewcontrollers(即它已經刪除了網頁視圖的視圖 - 控制)。
我也試着把viewWillAppear的viewcontroller我彈出回來,但該方法永遠不會被調用。
我正在尋找一種方法來強制UINavigationController重新加載相同的方式,你可以在UITableView上調用reloadData
。
任何幫助將不勝感激。
你能告訴你正在使用推碼視圖控制器? – InsertWittyName 2011-05-03 19:55:11
當然。 [self.navigationController pushViewController:wv animated:YES]; wv是已經被分配,初始化然後傳遞它加載的url的webview viewcontroller。 – Cyrus 2011-05-03 21:05:12