2017-07-23 4 views
0

Ich versuche, einen Musik-Player zu machen, und in einer Ansicht habe ich eine UITableView von Wiedergabelisten und ich möchte, wenn der Benutzer eine Zelle abgreift, um zu einem anderen UITableView zu segeln, der eine tabellierte Liste enthält die Lieder in der Playlist. Wenn dies zu tun, bekomme ich folgende Fehlermeldung:Swift UITableViewCell Segue zu einer anderen Ansicht

"2017-07-22 23:58:35.479139-0700 FoodTracker[740:118055] ; layer = ; contentOffset: {0, 0}; contentSize: {375, 1080}>'s window is not equal to 's view's window!"

Der Name des Projektes ist foodTracker, weil ich ein Testprojekt aus von einem Apple-Tutorial-Projekt gebaut. PlaylistTable ist auch die Tabellenansicht mit den Songs. Nicht die Playlists. Gibt es eine Möglichkeit, diesen Fehler zu beheben?

Mein Code für Tableview() ist wie folgt:

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { 
    NSLog("You selected cell number: \(indexPath.row)!") 

    tableView.deselectRow(at: indexPath, animated: true) 

    let thePlaylist = playlistArray[indexPath.row].songs 
    songsToShow = loadSongs(songs: thePlaylist) 
    let storyboard = UIStoryboard(name: "Main", bundle: Bundle.main) 
    let destination = storyboard.instantiateViewController(withIdentifier: "playlistTable") as! playlistTable 
    destination.songArr = songsToShow 
    navigationController?.pushViewController(destination, animated: true) 

    performSegue(withIdentifier: "goTo", sender: self) 

} 
+0

Sind die 2 'UITableViews in der gleichen oder in einer anderen Ansicht? – Lawliet

Antwort

0

Warum sind Sie beide tun? Entfernen Sie eine von diesen.

navigationController?.pushViewController(destination, animated: true) 

performSegue(withIdentifier: "goTo", sender: self) 
0

@JuatANoob Ich denke, Ihnen einige grundlegende Fehler im Code gemacht Snippet besteht keine Notwendigkeit, sowohl Code von pushNavigation und performSegue im gleichen Schnipsel zu tun. Die beiden Dinge in einem Schnipsel werden Verwirrung stiften. Es gibt also nur eine Sache, die Sie mit Ihrem Code machen müssen. entweder pushNavigation oder entweder performSegue.

0

Kommentieren Sie einfach diese Zeile, wenn Sie kein Storyboard benötigen.

performSegue(withIdentifier: "goTo", sender: self) 
Verwandte Themen