UITableView, comment puis-je savoir ce que la section pendant cellForRowAtIndexPath?
-
16-09-2019 - |
Question
J'ai un UITableView afficher une liste des villes. Je veux les séparer par l'Etat. Je ne peux pas sembler comprendre comment l'obtenir pour choisir les bons articles de mon Array. Si la section 1 (Arizona) a 2 Villes et Section 2 (Californie) a 2 villes, au cours de cellForRowAtIndexPath, Section 2, Ville 1 a un indice de 0, même si elle est le 3ème élément dans mon tableau. Je pensais simplement tourner mon tableau de la ville dans un tableau d'État, où chaque élément tient un tableau des villes, mais je ne sais pas encore ce que l'article que je suis sur et ne sais donc pas quelle matrice Ville sous les Etats tableau je voudrais besoin d'accéder.
La solution
La méthode est appelée
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
Le paramètre indexPath contient une propriété de ligne et de section.
indexPath.section
indexPath.row
Voici le lien de la documentation pour la NSIndexPath classe.
Autres conseils
vous pouvez utiliser indexPath.section
et indexPath.row
Swift 3, 4 et 4,2
Utilisation de commutateur
switch indexPath.section {
case 0:
print("Write your code for section number one.")
case 1:
print("Write you code for section number two")
default:
return
}
Utilisation if else
if indexPath.section == 0 {
print("Write your code for section number one.")
} else if indexPath.section == 1 {
print("Write your code for section number two.")
}