Outlineview ou Tableview ?

olofolof Membre
janvier 2013 modifié dans API AppKit #1
'Jour !



J'ai besoin d'un contrôle qui ressemble à  la partie gauche de la fenêtre de Mail, ou de iTunes, pour présenter une liste plate (1 niveau) avec des regroupements. Je n'ai pas besoin de pouvoir faire des collapse/expand. Par contre, j'aimerais bien que l'utilisateur puisse ré-ordrer les items de la liste.



Alors, plutôt Outlineview ou Tableview ?





Merci

Réponses

  • AliGatorAliGator Membre, Modérateur
    Trouvé sur CocoaControls.com (et t'en a sûrement d'autres qui existent)
  • Merci Ali. En fait, je ne cherche pas un contrôle tout fait. J'aimerais utiliser soit un NSOutlineView soit un NSTableView pour arriver au comportement que je recherche. Dans un but pédagogique.



    Et comme j'ai besoin de gérer une liste à  un seul niveau, je me demande si une NSTableView est suffisant ou pas...
  • AliGatorAliGator Membre, Modérateur
    ça fait longtemps que je n'ai pas fait d'OSX mais si tu n'as qu'un seul niveau je partirai sur une NSTableView (potentiellement avec des headers pour faire les regroupements, si on peut mettre des headers dans les NSTableView en plein milieu de la liste pour faire des sections comme on peut le faire sous iOS avec UITableView, mais pour ce point mon OSX est un peu loin j'ai un doute ^^)
  • Sauf erreur, on ne peut pas. Je pensais plutôt faire mes titres de groupes par des cellules graphiquement différentes... En fait, je suis encore ne lez dans la doc et sur internet. Je n'ai pas encore fait le moindre test...
  • C'est de l'outline view pour ce que tu cherche à  faire, même s'il n'y a que deux niveau (titre et contenu).
  • 'yoann' a écrit:


    C'est de l'outline view pour ce que tu cherche à  faire, même s'il n'y a que deux niveau (titre et contenu).


    Même si je ne travaille qu'avec un niveau et deux "types" de cellules différents ? Genre si le type est "Group" -> un type de cellule avec juste un titre en gras centré et si le type est "item" -> un type de cellule avec une icône, un texte et un badge (par exemple) image/huh.gif' class='bbc_emoticon' alt='???' />
  • 'olof' a écrit:


    Même si je ne travaille qu'avec un niveau et deux "types" de cellules différents ? Genre si le type est "Group" -> un type de cellule avec juste un titre en gras centré et si le type est "item" -> un type de cellule avec une icône, un texte et un badge (par exemple) image/huh.gif' class='bbc_emoticon' alt='???' />




    Boff... Si tu fais ça dans un but pédagogique autant utiliser le bon composant... Avec la TableView tu pourra pas enrouler certaines sections comme dans le finder ou dans mail.



    Maintenant la question est de savoir si tu cherche vraiment a montrer une collection pour un menu ou du contenu.



    La solution de cellule custom dans la tableview est envisageable pour grouper du contenu, mais attention, d'origine elle ne permet pas de garder la section en cours en haut de colonne comme sur iOS.
  • 'olof' a écrit:


    'Jour !



    J'ai besoin d'un contrôle qui ressemble à  la partie gauche de la fenêtre de Mail, ou de iTunes, pour présenter une liste plate (1 niveau) avec des regroupements. Je n'ai pas besoin de pouvoir faire des collapse/expand. Par contre, j'aimerais bien que l'utilisateur puisse ré-ordrer les items de la liste.



    Alors, plutôt Outlineview ou Tableview ?





    Merci




    Tu peux utiliser le style SideBar



    http://www.mixcode.de/?p=50
  • Merci pour vos suggestions, réponses, ... Finalement, après avoir fait un premier essai avec une TableView, j'ai utilisé le contrôle Source List proposé pour IB (c'est une OutlineView légèrement préparée cet effet). Et pour le moment, j'en suis content.
Connectez-vous ou Inscrivez-vous pour répondre.