2016-09-07 8 views
0

この質問は何度も尋ねられましたが、私はヒントを得ていません。実際に私はswift.Actuallyで私は新しいですUITableViewControllerのviewcontrollerrを作成しました。 didSelectRowAtIndexPathメソッドのテーブル行またはセルをクリックすると、このエラーが発生しますfatal error: unexpectedly found nil while unwrapping an Optional value viewcontrollerをプッシュしようとしています。スウィフトは、TableViewのオプション値をアンラッピングしている間に予期せずnilが見つかりました

class SideMenuController: UITableViewController { 
override func viewDidLoad() { 
     super.viewDidLoad() 
    } 
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { 
     print("Row \(indexPath.row) selected") 
     switch indexPath.row { 
     case 0: 
      break 
     case 1: 
      let vc = addValueVC(nibName: "addValueVC", bundle: nil) 

      //following line is giving error 
      self.navigationController!.pushViewController(vc, animated: false) 

      break 
     default: 
      break 
     } 

    } 
} 
+0

使用'、そう書くのか?このような 'self.navigationController?.pushViewController(vc、animated:false)' –

+0

@NDocエラーはありませんが、これからView Controllerをプッシュできません。 – Yatendra

+0

'self.navigat ionController'です。それは無用ですか?現在のコントローラにナビゲーションコントローラがありますか? – pkc456

答えて

1

あなたはこのラインにこれ​​に

self.navigationController!.pushViewController(vc, animated: false) 

を交換する必要があり、UINavigationViewControllerを使用していないので!代わりに ``力の `オプションラッピング

self.presentViewController(vc, animated: false, completion: nil) 
関連する問題