IOS學習-報錯誤 Finishing up a navigation transition in an unexpected state. Navigation Bar subview tree m

環境:XCODE:5.0.2  IOS7模擬器 ide

界面:使用storyboard 拖拽spa

簡單應用:一個CoreData的CRUD用例。code

界面以下圖(一個UITableViewController 列表   查詢和刪除  選擇UITableViewCell後顯示詳細頁面 一個UIViewController 進行編輯或添加數據)orm

TableViewController  點擊 +號 Push跳轉到 DetaiViewController;選擇Cell後也Push到DetailViewController(identifier爲:detailViewByCell)跳轉blog

都用連線實現。it

在頁面跳轉到的時候出現如上報錯,致使 導航子視圖可能損壞 。io

根據錯誤信息在DetaiViewController裏輸出導航的子視圖table

    NSLog(@"%@",self.navigationController.viewControllers);form

輸出:class

發現DetailViewController 有2個 很明顯跳轉的時候 出現問題

緣由是UITableViewCell 在選擇的時候 用連線的時候直接PUSH到了DetailViewController,

而在代碼裏也實現了跳轉

    [self performSegueWithIdentifier:@"detailViewByCell" sender:p];

去掉此處代碼,至於須要傳參可在prepareForSegue中傳參

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
   
if ([segue.identifier isEqualToString:@"detailViewByCell"]) {
        TRDetailViewController* detailVC=[segue destinationViewController];
        Person* p=self.persons[ [self.tableView indexPathForSelectedRow].row];
            detailVC.editPerson=p;
    }
   
   
}
相關文章
相關標籤/搜索