Comment puis-je faire un NSOutlineView basé sur une vue simple?
À des fins d'apprentissage, je voudrais convertir une base de cellules NSOutlineView de vue basés sur un,
fondamentalement, je voudrais suivantes:
- au lieu d'une cellule normale, j'aimerais une image et du texte d'une cellule de tableau affichage"
- l'image peut être le stock NSApplicationIcon et le texte peut-être juste " bonjour 🙂
- J'aimerais le faire sans l'aide de liaisons et
NSTreeController
Voici les "mondes la plus simple NSOutlineView' exemple http://www.cocoasteam.com/Cocoa_Steam/Worlds_Simplest_Demo.html
Je me demande si quelqu'un pouvait le modifier pour le rendre selon la vue et de travailler comme je l'ai dit au dessus 🙂 🙂
J'ai essayé de chercher des apple des exemples, et de chercher ailleurs sur internet, mais je ne peux toujours pas le faire fonctionner - merci beaucoup d'avance 🙂
source d'informationauteur horseyguy
Vous devez vous connecter pour publier un commentaire.
OK, si vous voulez un
NSOutlineView
avecImageAndTextCell
cellules, droit?Faisons l'un des exemples les plus typiques de ce genre : un simple explorateur de fichiers.
Ce que nous aurons besoin de :
NSOutlineView
(mettre un plan à votre AppDelegate, commefileOutlineView
)NameColumn
SizeColumn
ModifiedColumn
Maintenant, comme pour le reste, je vais tout faire de la programmation, de sorte que vous obtenez une bonne idée de ce qui se passe...
Comment le configurer (par exemple, dans
- (void)awakeFromNib
):Relier les points :
Astuce :
ImageAndTextCell
classe peut être trouvé ici. Vous remarquerez aussi quelques autres méthodes que j'utilise, qui ne sont évidemment PAS pris en charge par le Cacao (par exempleisFileHidden
isFolder
oufolderContentsWithPathAndBackIgnoringHidden
), mais il n'est pas difficile à mettre en œuvre vous-même...)J'ai créé un petit exemple de projet qui ne fait que cela.
Découvrez besi/mac-quickies sur github.
La plupart des choses, est effectué au bureau de l'IB ou peut être trouvée dans le AppDelegate
Pour revenir en vue de OutlineView colonne au Lieu d'utiliser la source de données méthode de retour objectValue:
UTILISER LA SOURCE DE DONNÉES MÉTHODE DE RETOUR DE VUE!!!!!!!!:
tout le reste est identique(minimal requis est le premier de trois de source de données, méthodes, vous n'avez pas besoin de le déléguer à des méthodes), mais,
vous ne pouvez pas utiliser willdisplaycell de son nom uniquement pour la cellule de base , tout faire pour l'afficher dans la viefortablecolumn méthode comme ceci:
et n'oubliez pas de mettre les identifiants , et pour définir le OutlineView à la Vue(IB ...).
Vérifier TableViewPlaygroundaussi Vue NSTableView de Base à Avancé de la WWDC 2011.