2010-08-05 6 views
1

Je veux réaliser quelque chose comme un extensible et pliable UITableViewCell. La partie de l'effondrement et de l'extension de la frappe de l'utilisateur a été réalisée, mais ce que je cherche, c'est la possibilité de montrer de plus en plus.extensible et rétractable uitableviewcell

Autrement dit, lorsque le UITableViewCell ne s'est pas développé pour afficher l'affichage complet, le mot "more" devrait s'afficher. Lorsque le UITableViewCell est développé, il devrait afficher le mot "less" à la fin. Donc, chaque fois que l'utilisateur appuie sur plus, seul le UITableView devrait se développer et vice versa. Des idées sur comment je pourrais faire ça? Quelque chose comme sur les pages Web. Lorsque vous cliquez sur le lien plus il étend la zone et vous permet de voir l'intégralité de son contenu.

+0

Regardez les vidéos WWDC 2010 ... – iwasrobbed

+0

S'il vous plaît regardez: http://www.alexandre-gomes.com/?p=482 – vakio

+0

Eh ... ce n'est pas vraiment un doublon de la question liée, et j'ai marqué pour l'attention de mod sur ces raisons ... mais en lisant ceci soigneusement, je ne suis pas vraiment sûr de ce que la question ici demande même. -1 –

Répondre

7

En étoffant la réponse d'iWasRobbed, vous recherchez WWDC 2010 Session 128, Mastering Table Views, que vous pouvez trouver officiellement au apple.com.

Il comprend une démonstration de l'expansion des cellules de table en mettant à jour les valeurs renvoyées par tableView:heightForRowAtIndexPath: puis en appelant:

[tableView beginUpdates]; 
[tableView endUpdates]; 

sur le UITableView. Comme vous n'avez pas besoin de modifier les lignes affichées, vous n'avez pas besoin d'inclure de code entre le début et la fin. Une fois que endUpdates est appelée, les hauteurs de toutes les lignes sont recalculées par des appels à tableView:heightForRowAtIndexPath: pour chaque ligne.

La vidéo contient des exemples d'animation des mises à jour, notamment la désactivation des animations.

+0

@Dougles j'ai vu cette vidéo, mais ne pouvait pas le code source. J'ai trouvé [this] (http://developer.apple.com/library/ios/#samplecode/TableViewUpdates/Introduction/Intro.html) dans les exemples de codes d'Apple, mais c'est très compliqué. Pouvez-vous m'aider s'il vous plaît? – ilhnctn