2012-12-14 2 views
5

ich frage mich, wie kann man belebte der Expansions-/Einsturz eines Baum NSOutlineView Knoten von Code?NSOutlineView zeigen/Minimierungsanimation von Code

// this works ok but doesn't animate 

NSTreeNode *node = [self.outlineView itemAtRow:self.outlineView.clickedRow]; 

if([self.outlineView isItemExpanded:node]) 
{ 
    [self.outlineView.animator collapseItem:node]; 
}else{ 
    [self.outlineView.animator expandItem:node]; 
} 

eine Ansicht, beseelt natürlich, wenn Sie einen Knoten über den Standardgezogenen Pfeil
so erweitern gibt es einen Weg ...

Antwort

11

Mein ursprünglicher Code war in Ordnung, das war unter verfügbar einfach nicht 10,7

Originaltext aus Application Kit Release Notes for OS X v10.8: jetzt

NSOutlineView

Die folgenden Methoden über den -Animator Proxy animieren unterstützen werden: - expandItem :, -expandItem: expandChildren :, -collapseItem: und -collapseItem: collapseChildren :. Um beispielsweise die Erweiterung eines bestimmten Elements zu animieren: [[outlineView animator] expandItem: item];

+0

Kannst du Link zu den Release Notes, wo es das sagt? – zakdances

+0

Fertig. Dieser Text befindet sich im Abschnitt NSOutlineView – Nightbirdsevolve

+1

Wenn Sie Swift verwenden, erhalten Sie in Xcode keine Autovervollständigung, wenn Sie versuchen, 'outlineView.animator(). Ex' einzugeben. Vielleicht ist es ein Fehler. Aber es funktioniert tatsächlich, wenn Sie es manuell eingeben 'outlineView.animator(). ExpandItem (item)'. –

0

Das Problem ist wahrscheinlich die node Sie vorbei an collapseItem:. Sie müssen das Objekt übergeben, das Ihr Baumcontroller verwendet, um den Knoten und nicht den tatsächlichen Knoten aus Ihrem Datenmodell darzustellen. Wenn Sie NSTreeController verwenden, müssen Sie die von -[NSTreeController arrangedObjects] zurückgegebene Struktur durchlaufen, um den Knoten zu finden, der Ihr Datenmodellobjekt darstellt.

+0

Hallo, ich hatte Erfolg beim Öffnen/Zusammenbruch über Code , was ich habe ein Problem mit ist ANIMIEREN es – Nightbirdsevolve

Verwandte Themen