2009-09-04 7 views
0

J'utilise ce style de vue de table UITableViewCellStyleValue2.UITableViewCellStyleValue2 éditer les indicateurs?

Je définis l'édition, mais je ne peux pas sembler obtenir les flèches pour apparaître sur la droite de la cellule - comme l'application Contacts.

Aussi dans l'application de contacts, je remarque que si j'ai un favori, il met un * (étoile) vers la droite. Toute information sur la façon d'obtenir une image serait appréciée.

Merci!

Répondre

2

Vous n'obtenez pas la flèche sur le côté droit en définissant l'édition - c'est pour définir ce qui se passe si vous cliquez sur un bouton "modifier" en haut (par exemple glisser & drop etc). Ce que vous décrivez (à partir de la référence à l'application Contacts) s'appelle un indicateur de divulgation .

Pour obtenir la flèche dans la cellule, mettez dans votre tableView: méthode cellForRowAtIndexPath:

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 

Il existe d'autres types d'accessoires cellulaires - comme vous tapez ci-dessus, arrêtez avant la « DisclosureIndicator "bit et appuyez sur [esc] pour voir les choix. Maintenant, votre deuxième exigence - l'étoile - est un peu plus complexe. C'est parce que le cadre ne vient pas avec l'image d'étoile comme accessoire standard. Par conséquent, vous devez construire une image, la pousser comme une vue sur la cellule, puis la définir comme vue accessoire (ou vous pouvez définir ses coordonnées spécifiques si vous le souhaitez). Vous devrez faire (ou trouver) une image d'un autre endroit pour l'utiliser comme étoile.

En supposant que vous avez une image appelée « myStar.png » le code (dans la même méthode que celle ci-dessus) serait:

UIImage *myImage = [UIImage imageNamed:@"myStar.png"]; 
[cell addSubview:myImage]; 
cell.accessoryView = myImage; 

Comme je l'ai dit, cette dernière ligne est facultative - vous pouvez toujours régler la les coordonnées spécifiques de l'image sur la cellule vous-même.

Espérons que ça aide!

1

Vous vouliez probablement la propriété cell.editingAccessoryType. Cela définit le style de la flèche en mode d'édition, et cela devrait fonctionner correctement.

Questions connexes