Comment mettre en œuvre un accordéon pour un SDK de l'iPhone app?
Quelqu'un a vu la mise en œuvre d'un "accordéon" (peut-être appelé "animé plan") l'affichage de l'iPhone? J'ai trouvé un exemple de projet pour le Cacao, mais avant d'essayer un port, j'espérais que quelqu'un a inventé la roue déjà.
De préciser, dans une UIView, envisager une pile de sections, chacune contenant un en-tête, et puis certains contenus. Lorsque l'utilisateur touche l'en-tête (ou via un message/événement), si la section est déjà ouvert => close; si la section est fermée => ouvrir et de fermer toute autre section ouverte. Un exemple en jQuery ressemble:
http://docs.jquery.com/UI/Accordion
Dans mon cas, je veux être en mesure de mettre tout UIView contenu dans chaque section.
Je serais intéressé par juste de voir certains réel des applications qui ont mis en œuvre ce - juste pour savoir, c'est possible!
Jetez un oeil à github.com/nacho4d/Accordion Elle met en œuvre un Accordéon de style de navigation pour iPad, vous pouvez voir comment tout cela fonctionne!
Tout n'est pas possible! Voir stackoverflow.com/questions/4962539/.... 😉
Cet Accordéon de l'échantillon a un réel potentiel. Je l'ai essayé et trouvé qu'il offre une transition en douceur et de l'accordéon se sentir à l'utilisation de UITableView cellules. Je voudrais vous recommandons de changer le transisition style à l'intérieur de l' - (void) fileAccordionDatasourceManager:(N4FileAccordionDatasourceManager *) le gestionnaire de didInsertRowsAtIndexPaths:(NSArray *)indexPaths{ //[self.tableView insertRowsAtIndexPaths:indexPaths withRowAnimation: UITableViewRowAnimationLeft]; [self.tableView insertRowsAtIndexPaths:indexPaths withRowAnimation: UITableViewRowAnimationTop];
C'est la Réponse parfaite. Fonctionne très grand....
OriginalL'auteur raf | 2009-12-22
Vous devez vous connecter pour publier un commentaire.
Je voudrais juste utiliser un UITableView, chaque cellule de la hauteur dépend de si oui ou non c'est "ouvrir", puis à partir de là. Il est facile de redimensionner les lignes et vous pourriez juste faire la hauteur totale pour l'ensemble des cellules de la hauteur disponible dans la UITableView, de sorte qu'il ressemble à un accordéon plus qu'un simple tableau.
Il s'agit d'un hack qui devrait fonctionner, mais dans votre UITableViewController sous-classe .h fichier:
Et dans le .m fichier mettre quelque chose comme:
Ce sera essentiellement de prendre de 4 lignes et de les transformer en outils rétractables sections où la sélection d'une ligne étendra à 240 pixels et l'effondrement de toutes les autres lignes de 40. Vous pouvez modifier l'ensemble de ces chiffres et de comprendre les sections et de faire tout ce que vous voulez avec elle.
J'ai essayé et ça fonctionne. Vous pouvez ensuite terminer en ajoutant le reste du contenu de votre cellule de création de code à ajouter ce que vous souhaitez pour une section (y compris, éventuellement, d'un défilement UITextView si vous le souhaitez).
OriginalL'auteur mjdth
Chaque solution que j'ai trouvé était à l'aide de UITableView, qui n'a pas fonctionné pour moi, parce que je n'ai pas d'afficher des données tabulaires. C'est pourquoi j'ai créé AccordionView de contrôle. L'utilisation est assez simple:
Dans la vraie vie, il ressemble à ceci:
Barres noires sont les en-têtes et vous pouvez les personnaliser tout ce que vous voulez (je suis en utilisant Three20).
Bien sûr, je vais répondre tout de suite 🙂
Salut suda, je vous remercie beaucoup pour votre travail. Ici, j'ai ouvert une petite question. Jetez un coup d'oeil. github.com/appsome/AccordionView/issues/23
OriginalL'auteur suda
J'ai trouvé ce code: Une simple mise en œuvre de l'accordéon..
https://github.com/kuon/ios-example-accordion
J'espère que cela va aider quelqu'un..
OriginalL'auteur Dilip Rajkumar
Je viens de tombé sur ce et a trouvé mjdth solution très simple et utile. Cependant, vous pourriez vouloir utiliser
au lieu de la propoesed
reloadSections
méthode que le rechargement des lignes vous donne une transition beaucoup plus fluide.OriginalL'auteur wallyB
Voici la
CollapsingTableViewDelegate
classe que je suis actuellement en train de travailler pour ce faire. Cela fonctionne uniquement avec la statique du contenu de la table.Vous offre la
CollapsingTableCellDelegate
mise en œuvre de cette classe, qui doit savoir comment calculer développée et réduite à des tailles de chaque ligne, et comment créer unUIView
pour chaque ligne. Le point de vue reste le même si réduite ou étendue, de sorte que le haut de ruban de chaque ligne de vue sert cette ligne est cliquable en-tête.Vous ensuite de faire de cette classe de la source de données et délégué pour votre
UITableView
.Fichier d'en-tête
CollapsingTableViewDelegate.h
:et le fichier source
CollapsingTableViewDelegate.m
:Pas la perfection, mais semble fondamentalement de travail pour moi.
OriginalL'auteur Archie
J'ai trouvé cet exemple ici, si quelqu'un est intéressé.
http://www.cocoanetics.com/2011/03/expandingcollapsing-tableview-sections/
OriginalL'auteur Jimbalaya