L'obtention de la Ligne de la Section indexPath dans un tableView
Récemment, j'ai mis en œuvre une option d'indexation pour les noms d'utilisateur de mon application. J'ai essayé de l'accès aux lignes de chaque section et de les ajouter à mes destinataires tableau lorsque l'utilisateur appuie sur le chemin d'index. J'ai essayé en passant de nombreuses valeurs différentes dans mon objectAtIndex: méthode, mais aucune ne semble fonctionner. Je suis en mesure de vous connecter le bon indice de la ligne et la section dans indexPathForRow:inSection: méthode, mais la valeur de retour est une indexPath et pas un entier. Donc, quelque chose avec mon objectForIndex: méthode n'est évidemment pas la droite. De l'aide ou des références serait super. cheers!
Cette ligne:
PFUser *user = [self.friends objectAtIndex:indexPath.section];
Ne retourne que le premier nom d'utilisateur dans chaque section, peu importe le nom que je tape dans la section. J'ai donc besoin d'accéder à la Ligne en plus, pas juste la section.
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[self.tableView deselectRowAtIndexPath:indexPath animated:NO];
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
int section = indexPath.section;
int row = indexPath.row;
NSIndexPath *newIndexPath = [NSIndexPath indexPathForRow:row inSection:section];
NSLog(@"newIndexPath: %@", newIndexPath);
PFUser *user = [self.friends objectAtIndex:indexPath.section];
if (cell.accessoryType == UITableViewCellAccessoryNone) {
cell.accessoryType = UITableViewCellAccessoryCheckmark;
[self.recipients addObject:user.objectId];
NSLog(@"added:%@",user);
}
else {
cell.accessoryType = UITableViewCellAccessoryNone;
[self.recipients removeObject:user.objectId];
NSLog(@"removed:%@",user);
}
[self.currentUser saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
if (error) {
NSLog(@"Error %@ %@", error, [error userInfo]);
}
}];
}
indexPath.row
et indexPath.section
... pas besoin de faire quelque choses d'autre 🙂 et aussi seulement indexPath
dose pas de retour à la valeur entière.. 🙂quelle est votre source de données.....
mais comment pourrais-je passer les deux de ces valeurs pour
PFUser *user = [self.friends objectAtIndex:indexPath.section];
?PFUser de l'utilisateur * = [self.amis objectAtIndex:indexPath.article];// Quel est votre modèle de source de données.... est-il tableau d'objet ou un tableau de tableau d'objets
Qu'est-ce que PFUser *l'utilisateur et de votre question peu plus de créer de la confusion, s'il vous plaît pouvez-vous élaborer ??
OriginalL'auteur Jared Gross | 2013-10-29
Vous devez vous connecter pour publier un commentaire.
Salut c'est assez essayez et laissez-moi savoir si vous rencontrez des problèmes...
OriginalL'auteur Arun
Tout comme le code Spynet suggéré seulement un peu différent:
À l'aide de ce code j'ai été en mesure d'obtenir la bonne indexPath de ligne dans chaque section. Aussi, afin d'obtenir les cellules accessoire coches pour fonctionner correctement, j'ai dû créer un newIndexPath à l'aide de la section de ligne et de valeurs pour chaque indice. Mon code final est ici:
OriginalL'auteur Jared Gross