mi piacerebbe espandere ogni nodo nel mio -awakeFromNib().
A partire da Mac OS X 10.5, [outlineView expandItem:nil expandChildren:YES]
.
Nelle versioni precedenti di Mac OS X, è necessario scorrere da 0 al numero di righe, ottenere l'elemento per ogni riga utilizzando [outlineView itemAtRow:row]
e archiviare tali elementi in un array, quindi iterare l'array e passare ciascuno elemento al metodo expandItem:expandChildren:
. (Non puoi mescolare i due anelli perché espandendo un oggetto e tutti i suoi discendenti cambieranno gli indici di riga dei suoi fratelli successivi, quindi, prima devi raccogliere tutti gli oggetti di primo livello, quindi espanderli dopo averli tutti.)
Vorrei anche selezionare in modo programmatico il primo figlio del primo nodo allo stesso tempo.
Subito dopo quanto sopra, sarà riga 1.
Una vista struttura è una sorta di vista tabella, in modo che verrà utilizzato uno dei metodi di NSTableView: [outlineView selectRowIndexes:[NSIndexSet indexSetWithIndex:1] byExtendingSelection:NO]
.
fonte
2009-02-06 10:16:13
Perfetto, grazie. Perché il passaggio nullo funziona? Ho provato quel messaggio con quasi tutti gli oggetti che potevo pensare ... –
Come spiega la documentazione di NSOutlineView, passandoli nil quando l'elemento dice di espandere tutti gli elementi radice. –
Relativo anche: non bere troppo vino quando si codifica e non dimenticare di collegare la presa a NSOutlineView come facevo oggi. ;) –