Wenn Sie es ziehen können, sieht es so aus
Ich nannte es normalerweise "Zelle"
HomeViewController
class HomeViewController: UIViewController, UITableViewDataSource, UITableViewDelegate
3.2 Datenerstellung
HomeViewController
let sectionTitle = ["Früchte","Viele Berge von","trinken"]
let listContentOne = ["Apfel","Erdbeere","Traube","Ananas","Kiwi"]
let listContentTwo = ["Tateyama","Männerkörperberg","Tanigawadake","Mt. Kinmine","Hotakadake","Großer Bodhisattva"]
let listContentThree = ["Kaffee","Soja Milch","Saft","Mit Kohlensäure","Wasser"]
3.3 Bestimmen Sie die Anzahl der Sitzungen
HomeViewController
func numberOfSections(in tableView: UITableView) -> Int {
return sectionTitle.count
}
3.4 Bestimmen Sie den Titel der Sitzung
HomeViewController
func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
return sectionTitle[section]
}
3.5 Bestimmen Sie die Anzahl der Zellen in der Sitzung
HomeViewController
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
switch section {
case 0:
return listContentOne.count
case 1:
return listContentTwo.count
case 2:
return listContentThree.count
default:
return listContentOne.count
}
}
3.6 Legen Sie den Inhalt in die Zelle
HomeViewController
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell: UITableViewCell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
switch indexPath.section{
case 0:
cell.textLabel!.text = listContentOne[indexPath.row]
case 1:
cell.textLabel!.text = listContentTwo[indexPath.row]
case 2:
cell.textLabel!.text = listContentThree[indexPath.row]
default:
cell.textLabel!.text = listContentOne[indexPath.row]
}
return cell
}
3.7 Implementiertes Verhalten nach Drücken einer Zelle (nur ein Beispiel)
HomeViewController
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if indexPath.section == 0 {
if indexPath.row == 0 {
let anotherStoryboard:UIStoryboard = UIStoryboard(name: "CellDetailPage", bundle: nil)
let targetViewController = anotherStoryboard.instantiateViewController(withIdentifier: "celldetail")
self.present(targetViewController, animated: true, completion: nil)
}
}
}
HomeViewController
func sectionIndexTitles(for tableView: UITableView) -> [String]? {
return sectionTitle
}
4.2 Ändern Sie die Hintergrundfarbe
HomeViewController
func sectionIndexTitles(for tableView: UITableView) -> [String]? {
tableView.sectionIndexColor = UIColor.darkGray
tableView.sectionIndexBackgroundColor = UIColor.clear
return sectionTitle
}
Referenzartikel: [[Für Anfänger] Verwendung von Abschnitt (Abschnitt) von UITableView](https://blog.mothule.com/ios/uitableview/ios-uitableview-section-basic#section Was ist ein Abschnitt und was ist eine Zeilenzeile?)
Recommended Posts