2016-08-05 6 views
0

Ich erstellte eine Tabellenansicht in Storyboard, das 11 Zeilen enthält. Ich möchte in der Lage sein, auf jede Zeile zu tippen und sie in ihren eigenen Tableview-Controller zu öffnen, wo ich Daten speichern werde, abhängig von der getippten Zeile.So öffnen Sie eine neue Tabellenansicht programmgesteuert in swift

 var array = ["row 1", "row 2", "row 3", "row 4", "row 5", "row 6", "row 7", "row 8", "row 9", "row 10", "row 11"] 

override func numberOfSectionsInTableView(tableView: UITableView) -> Int { 
    return 1 
} 
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
    return array.count 
} 
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { 
    let cell = tableView.dequeueReusableCellWithIdentifier("prototypeCellIdentifier", forIndexPath: indexPath) 
     cell.textLabel?.text = array[indexPath.item] 
     cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator 
    return cell 
} 

Dies ist, was ich getan habe, um die Zeilen zu erstellen.

+2

UITableViewDelegate-Methode 'func tableView (_ tableView: UITableView, didSelectRowAtIndexPath indexPfad: NSIndexPath)' – Asdrubal

+0

Lernen Sie, Apple-Dokumentation zu lesen. Das ist alles drin. Oder suche im Internet. Dazu gibt es unzählige Tutorials und Beispiele im Internet. – dasdom

+0

@dasdom Ich denke, du bist vielleicht auf etwas. Wenn nur jeder dies getan hätte und Stack Overflow nicht existieren müsste. – icestorm0806

Antwort

1

Kurz:

  1. Gehen Sie zu Ihrem Storyboard
  2. einen anderen Tableviewcontroller In den Storyboard
  3. Drücken und halten Sie die rechte Maustaste auf den tableViewCell der Tableview mit 11 Zeilen und ziehen Sie es auf die neu erstellt TableViewController
  4. Geben Sie die Maus frei, und ein Popup wird angezeigt.
  5. Wählen Sie eines der Elemente z. show
  6. Bauen und Ihre Anwendung auszuführen, klicken Sie auf einer Zelle und ein neuer Tableviewcontroller öffnet

Um Daten an die Viewcontroller zu senden, die durch Klicken auf eine Zeile angezeigt worden sind, sollten Sie die Methode suchen in prepareForSegue(_)

+0

Es gibt auch viele gute Antworten hier auf SO, wie Daten zwischen View-Controllern übergeben werden. Vielleicht könntest du einen von ihnen verlinken? – Losiowaty

+1

@Losiowaty, guter Punkt :) mehr Details über das Senden von Daten bei der Verwendung von segues: http://Stackoverflow.com/a/26089243/5489170 und ich habe auch eine detailliertere Erklärung darüber gefunden, wie man einen neuen ViewController zeigt, wenn man auf klickt ein UITableViewCell: http://stackoverflow.com/q/28323925/5489170 – Bacon