Hallo Ich habe eine TableViewController
mit zwei statischen Zellen, aber wenn angezeigt, zeigt es die zwei statischen Zellen, und dann alle anderen leeren Zellen für die Tabellenansicht. Ich möchte diese Zellen jedoch nicht so anzeigen, wie sie nutzlos sind. Wie verstecke ich den Rest der Zellen abgesehen von den beiden statischen Zellen?So entfernen Sie zusätzliche leere Zellen in TableViewController, iOS - Swift
Antwort
in Ihrer viewDidLoad()
Funktion diese Codezeile hinzu:
tableView.tableFooterView = UIView()
dazu hinzuzufügen, den Grund, warum tableFooterView
zu UIView()
Einstellung der Zeilen entfernt ist, weil Sie ein leeres UIView()
Objekt auf die Eigenschaft setzen. Gemäß der Apple-Dokumentation:
var tableFooterView: UIView?
Einstellung daher eine leere UIView() wird für diese Eigenschaft nichts weiter unten Ihre Daten an.
Sie können die leeren Zeilen durch Zurücksetzen tableFooterView
auf den Standardwert, wie so bringen:
tableView.tableFooterView = nil
Sorry aber sieht es nicht wie ein Hack aus? – AOY
Nein, das ist eine absolut gültige Methode. Wenn Sie eine benutzerdefinierte TabelleFooterView festlegen möchten, erstellen Sie eine benutzerdefinierte UIView, bevor Sie sie auf tableFooterView setzen. Wenn Sie es dann auf null zurücksetzen, wird es nur auf den Standardwert zurückgesetzt. – toast
Ich verstehe. Danke) Es sieht nur ein bisschen komisch für mich aus, da ich neu zu swift – AOY
Sie dies auch durch einfaches Ziehen Blick in die Fußbereich der Tabellenansicht, und dann in der Storyboard erreichen können Stellen Sie die Höhe und die Hintergrundfarbe mit dem Eigenschafteninspektor auf 1 bzw. löschen ein.
(Dies setzt voraus, dass Sie entweder nicht oder wollen nicht nur den Stil Einstellung aus irgendeinem Grund-Gruppe verwenden. Ansonsten nur das tun.)
tableView.tableFooterView = UIView.init(frame: CGRect.zero)
Anruf dieser Code innerhalb des viewWillAppear
Methode. Und arbeiten
einfach hinzufügen:
tableView.tableFooterView = UIView()
Erläuterung:
Dieser total gültig ist und funktioniert perfekt in schnellen 3.By Da Sie eine leere UIView() Objekt auf die Eigenschaft einstellen, einstellen tableFooterView to UIView() entfernt die Zeilen.
bin, was ist der Unterschied von akzeptierter Antwort? –
Wählen Sie Ihre UITableView, gehen Sie zum Attributinspektor und ändern Sie den Stil in Grouped.
Ich versuchte die tableview.tableFooterView = UIView() und es hat nicht für mich funktioniert. Ich verwende eine benutzerdefinierte TableViewViewCell, vielleicht deshalb.
Ich habe einen Hack tho gefunden. In meinem func numberOfRowsInSection
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return yourArrayClass.count - 1
}
Und das macht meine leere zusätzliche benutzerdefinierte nicht mehr angezeigt werden UITableViewCell. Natürlich ist es das extra Leerzeichen. Ich werde es noch mehr testen, indem ich weitere Zellen hinzufüge. Als Referenz verwende ich Swift 3, Firebase, eine benutzerdefinierte Zellenklasse innerhalb der cellForRowAt-Funktion.
Dies zeigt nicht das letzte Element im Array an. – elarcoiris
Swift 4 auf Antwort der HORSET Ausarbeiten, erster Steuer ziehen Sie von Ihrer Tabellenansicht in Ihrem Storyboard, auf Ihre View-Controller-Klasse und erstellen einen Auslass Tableview genannt.
@IBOutlet weak var tableView: UITableView!
Dann Ihre viewDidLoad in Ihrem View-Controller sollte wie folgt aussehen:
override func viewDidLoad() {
super.viewDidLoad()
tableView.dataSource = self
tableView.delegate = self
tableView.tableFooterView = UIView()
}
Basierend auf oben Antworten in schnellen.
tableView.tableFooterView = UIView(frame: .zero)
- 1. So entfernen Sie leere Zeilen in SSMS?
- 2. So entfernen Sie nachgestellte leere Zeile/Spalten
- 3. Swift 2.2 - NSArray Element konnte nicht Swift Array Element Typ für Zellen in einem TableViewController
- 4. So entfernen Sie Stickerpacks in iOS 10
- 5. Von statischen Zellen zu dynamischen TableViewController wechseln
- 6. TableViewController und Tab Ansichten (swift)
- 7. So entfernen Sie zusätzliche Zeichenfolge "Line2D" in Matplotlib-Legende
- 8. Ungelöste Identifier, wenn in Tableviewcontroller Swift
- 9. PHP - Entfernen Sie zusätzliche Komma
- 10. entfernen Sie zusätzliche Leerzeichen in Zeichenfolge JavaScript
- 11. So entfernen Sie leere Tags in Eingabe-XML
- 12. Leere Zellen ignorieren PHPExcel
- 13. So entfernen Sie zusätzliche Felder im Woocommerce-Bestellbeleg?
- 14. So entfernen Sie zusätzliche Daten von XML-Attributen
- 15. So entfernen Sie zusätzliche Json-Schlüssel aus MongoDB Ergebnis
- 16. TableView zeigt leere Zellen
- 17. Entfernen Sie zusätzliche Kommas in C#
- 18. Entfernen Sie zusätzliche Legenden in ggplot2
- 19. Entfernen Sie zusätzliche Leerzeichen in C++
- 20. UITableview: So implementieren Sie graue Zellen
- 21. So entfernen Sie eine leere Liste aus einer Liste (Java)
- 22. So entfernen Sie leere Zeichenfolge Daten aus einem NSMutableArray
- 23. So entfernen Sie leere div, die eine GridView enthält
- 24. So entfernen Sie leere Werte Parameter aus der Abfragezeichenfolge
- 25. (Swift) TableViewController in der Containeransicht eines ViewControllers anzeigen
- 26. So entfernen Sie eine freigegebene Ansicht in swift
- 27. So entfernen Sie Zahlen aus einem String in Swift
- 28. So entfernen Sie Sonderzeichen aus der Zeichenfolge in Swift 2?
- 29. JAXB: Entfernen Sie zusätzliche unnötige Tag
- 30. UITableview mit mehr als einer benutzerdefinierten Zellen mit Swift
Kurz und effektiv! Arbeitete wie Charme! – yogipriyo
Was bedeutet das? Könnten Sie ausarbeiten? –
Diese Antwort ist immer noch in Swift 3 gültig. Wenn Sie die Hintergrundfarbe für die Tabellenansicht genauso einstellen wie die Hintergrundfarbe für die Hauptansicht, wird die Fußzeile so aussehen, als wäre sie verschwunden. –