2016-09-21 6 views
0

У меня вид таблицы, которая содержит эту функцию prepareForSegue:TableView и и кнопки (Crash)

override func prepare(for segue: UIStoryboardSegue, sender: Any?) { 
    let upcoming: CategoryDeviceViewController = segue.destination as! CategoryDeviceViewController 
    let myindexpath = self.MainPageTableView.indexPathForSelectedRow 
    let titleString = self.CategoryTitle.object(at: ((myindexpath as NSIndexPath?)?.row)!) as? String 
    upcoming.titlestring = titleString 
    self.MainPageTableView.deselectRow(at: myindexpath!, animated: true) 
} 

Чтобы получить титул из 6 ячеек и сохранить их на следующее представление в nvigational строки заголовка.

В этом представлении, содержащем функцию подготовки к функции segue, есть кнопка в навигационной панели, которая перемещается в другой (третий) контроллер просмотра!

Всякий раз, когда я нажимаю на эту кнопку в приложение падает на этой линии:

let upcoming: CategoryDeviceViewController = segue.destination as! CategoryDeviceViewController 

Я знаю причину ошибки, но как я могу решить эту проблему?

+0

В чем причина ошибки, которую вы знаете? И что журналы говорят о вашем крахе? – Santosh

+0

Предстоящий должен быть CategoryDeviceViewController, но при нажатии на кнопку он открыл третий контроллер вида. – Mariah

+0

Вы установили 'destination' viewController правильно в своем раскадровке для этого' segue'? – Santosh

ответ

1

В соответствии с вашими сходами и журналами сбоев, здесь вы отсутствуете, я думаю. Попытайтесь идентифицировать пункт назначения с вашими идентификаторами:

func prepare(for segue: UIStoryboardSegue, sender: Any?) { 
    if segue.identifier == "ShowCategoryDevice" { 
     let upcoming: CategoryDeviceViewController = segue.destination as! CategoryDeviceViewController 
     let myindexpath = self.MainPageTableView.indexPathForSelectedRow 
     let titleString = self.CategoryTitle.object(at: ((myindexpath as NSIndexPath?)?.row)!) as? String 
     upcoming.titlestring = titleString 
     self.MainPageTableView.deselectRow(at: myindexpath!, animated: true) 

    }else { 
     let upcoming: PopOverViewController = segue.destination as! PopOverViewController 
     //do rest of your stuff 
    } 
} 
+0

Помогите мне с этим вопросом: http://stackoverflow.com/questions/39619860/getting-the-values-of-data-stored-in-firebase/39620712#39620712 – Mariah