文檔是你的朋友,但我知道有時候是如此之大。
BTW 您需要爲您的大綱視圖設置ImageAndTextCell,您可以在窗口控制器init或awakeFromNib方法上或直接(如果需要)在您的NSOutlineView子類上執行此操作。
我的項目我有一個NSOutlineView子如下圖所示
// myOutlineView subclass
- (void)awakeFromNib {
self.imageCell = [[ImageAndTextCell alloc] init];
[self.imageCell setEditable: NO];
NSTableColumn* leftColumn = [[self tableColumns] objectAtIndex:0];
[leftColumn setDataCell: self.imageCell];
}
然後,您需要,您可以設置您的具體行的影像來實現willDisplayCell委託方法如下所示(文件夾圖標,文件圖標TXT ,jpg圖標)。
在代碼如下所示,我從我的單身VDIconUtils得到它,但你可以簡單地返回一個NSImage中
- (void)outlineView:(NSOutlineView *)outlineView willDisplayCell:(id)cell forTableColumn:(NSTableColumn *)tableColumn item:(id)item {
[cell setDrawsBackground:NO];
if ([[tableColumn identifier] isEqualToString:@"mycellname"]) {
[cell setImage:[[VDIconUtils sharedIconUtils] iconForFolderStatus:fs :16 :[outlineView isItemExpanded:item]]];
}
}
你能幫助我解決問題,這是帖子http://stackoverflow.com/questions/24993443/how-to-reload-an-nsoutlineview – akk 2014-07-28 14:09:39
我遵循相同的代碼,我不能刷新它。一旦它工作,它會很好。 – akk 2014-07-28 14:10:10