2017-10-16 155 views
0

我使用的是Xcode 9.0。SearchBar與故事板連接爲零

我的問題很簡單:我在TableViewController中刪除了一個UISearchBar對象。我這個連接作爲mySearchBar一個IBOutlet到TableViewController類:

class MyTableViewController: UITableViewController, UISearchBarDelegate, UINavigationControllerDelegate { 

    @IBOutlet weak var mySearchBar: UISearchBar! 
    @IBOutlet var myTableView: UITableView! 
} 
override func viewDidLoad() { 
    super.viewDidLoad() 

    navigationController?.delegate = self 

    self.mySearchBar.delegate = self // EXC_BREAKPOINT HERE 
    self.myTableView.delegate = self 

    self.myTableView.backgroundColor = UIColor.init(red: 0.0/255.0, green: 60.0/255.0, blue: 113.0/255.0, alpha: 1.0) 
} 

圈到左填充 - 所以我敢肯定,該對象已正確連接。 當我運行它在該行停止上述項目,枝條錯誤消息:

fatal error: unexpectedly found nil while unwrapping an Optional value.

我想:

  • 乾淨的項目和重建
  • 刪除derivedData,清潔和重建
  • 刪除StoryBoard中的UIsearchBar對象,刪除一個新對象並重新連接爲IBOutlet
  • 銷燬StoryBoard中的控制器並重新創建一個全新的控制器。

我不知道繼續下去。任何幫助讚賞。我知道你可以!

編輯:這裏與連接督察截圖:enter image description here

EDIT2:Filtro LOCALITA T是我TableViewController,你可以在這個第二個屏幕enter image description here

+0

添加故事板的屏幕截圖,並選擇UISearchBar並打開連接檢查器(左邊欄中帶圓圈和箭頭的最後一個圖標) – Ladislav

+1

什麼是Filtro Localita t ...因爲您的出口設置爲'class MyTableViewController :'我希望看到'MyTableViewController' – Ladislav

+0

@Ladislav它正是你所期望的...... – cicaletto79

回答

0

我解決它看。問題在於推向這個控制器。相反的:

let destinationView = FiltroLocalitaTableViewController() 
destinationView.palina = self.transito.palina 
self.navigationController?.pushViewController(destinationView, animated: true) 

我用:

let filtroLocalitaVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "filtroLocalitaView") as! FiltroLocalitaTableViewController 
filtroLocalitaVC.palina = self.transito.palina 
filtroLocalitaVC.delegate = self 
self.navigationController?.pushViewController(filtroLocalitaVC, animated: true) 

和它的工作。