0
我有一個基於視圖的NSTableView(使用圖像& Text CellView)。我是否需要繼承圖像和文本NSTableCellView以添加標籤?
根據dataSource中的dataItems,我選擇一個適當的CellView來顯示它們。
其中一個模板上有一個額外的(默認的CellView)標籤。但是當我實例化CellView時(我需要設置標籤的值),我不知道訪問它的正確方式是什麼。
我的問題基本上是 - 我應該搜索子視圖(如下面的代碼片段)或者我應該繼承CellView,添加一個屬性等?
NSArray* subviews = [cellView subviews];
for (id view in subviews) {
ViewType* view = (ViewType*)view;
if (view != nil) {
if ([view.identifier isEqualToString:@"idSetInIB"]) {
[view setStringValue:dataItem.someValue];
}
}
}
謝謝。
這裏是引導是怎麼說的觀點的層次結構:https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CocoaViewsGuide/WorkingWithAViewHierarchy/WorkingWithAViewHierarchy.html 他們只是提子視圖方法,有一個NSView子類的指南,但是我試圖找出的是 - 當案例像上面解釋的那樣簡單時(在CellView中添加標籤),哪種方法是正確的。 –
如果你認爲我的問題的答案是 - 絕對是繼承的方式 - 請編輯你的答案。 –
如果您閱讀本指南,您將會明白,子類化是處理基於視圖的表格的預期方式。 – uchuugaka