2010-03-23 5 views
1

J'ai besoin d'afficher un tas de UITableViewCell dans mon application iPhone. Exemple de regard ci-dessous. Je sais comment je peux activer la vue accessoire et l'image sur la cellule UITableView mais le problème est que je dois ajouter une note d'étoile visible sur l'écran. Il n'y a pas de logique fantaisiste derrière cela, ce ne sera que quelques images qui seront activées ou désactivées.Comment ajouter des étoiles à la cellule UITableView?

Je pensais que je pourrais créer un UITableViewCell personnalisé dans NIB mais comment l'utiliserais-je dans la méthode cellForRowAtIndexPath. Si c'était juste une cellule personnalisée, je fournirais simplement un point de vente et je l'accrocherais avec une propriété et l'utiliserais là-bas. Mais comme il serait utilisé plusieurs fois, je pense que je vais devoir le cloner ou le copier d'une manière ou d'une autre.

Quelle est la manière la plus simple d'ajouter de tels éléments à UITableViewCell?

alt text http://stuff.rajchel.pl/iphonestars.png

Répondre

1

Ce poste Matt Gallagher m'a aidé une tonne lorsqu'il s'agit de cellules TableView personnalisées http://cocoawithlove.com/2009/04/easy-custom-uitableview-drawing.html.

Résumé 1) Ne pas sous-classe UITableViewCell 2) Dans la méthode cellForRowAtIndexPath, mise en page de vos sous-vues personnalisées sur le dessus du UITableViewCell dequeued.

Pour ajouter une étoile, utilisez simplement un UIButton avec l'image par défaut d'une étoile non surlignée et d'une image sélectionnée d'une étoile en surbrillance.

0

Je pense que vous pouvez trouver tout ce dont vous avez besoin ici: http://github.com/eisernWolf/TouchCustoms

Soit un coup d'oeil sur le code pour avoir une idée du code que vous devez utiliser ou tout simplement mettre en œuvre directement leur code source en votre projet (ne pas oublier de lire attentivement la licence;))

Mais à mon avis, il devrait être assez facile de faire votre propre système de notation personnalisée:

  1. Faire une icône étoile - un vide, une plaine
  2. Créer UIButtons avec des icônes pertinentes
  3. Assurez-vous de mettre en œuvre des événements tactiles pertinents

D'accord, c'est un résumé: D, mais il ne devrait pas prendre trop beaucoup de temps pour construire;)

+0

Ce n'est pas le problème dans mon cas. Le problème est comment peupler 'UITableView' avec plusieurs contrôles personnalisés qui partagent le même" modèle "de NIB. – RaYell

1

Peut-être que mon FavStarControl est ce dont vous avez besoin? ;)

+0

Pas vraiment: D Je ne cherche pas de système de notation. Je veux juste imprimer la note en affichant des cellules de vue de table. Je n'ai pas besoin qu'ils soient interactifs ou quoi que ce soit. Juste une image en arrière-plan ou alors. – RaYell

+2

Dans ce cas, il suffit d'avoir 5 images, chacune représentant ce que 1/5 étoiles 2/5 étoiles ressemblerait, etc, et juste l'utiliser? – Jasarien

1
  1. Prenez 5 images dans une cellule personnalisée pour étoiles
  2. Faire connaître leurs points de vente dans UITableViewCell
  3. créer une note NSMutableArray *starArray et CFFloat dans l'interface
  4. dans la cellForRowAtIndexPath note = une valeur flottante cela peut être 0,0.5,1,1.5 ..... et appelez (void)rightImageSet: cette méthode remplira toutes les chaînes d'images que vous avez requises pour la note particulière.

  5. Dans rightImageSet appliquent la logique You can watch the images for further info.

  6. Dans un cas où quelque chose n'est pas clair commentaire

Questions connexes