2012-04-19 66 views
5

我有一個視圖控制器,它是2個表的代表,一個基於視圖的表格和一個基於單元格的表格。當它應該調用objectValueForTableColumn時,基於單元格的表正在調用。我非常確定這是一個基於單元格的界面生成器。爲什麼我的基於NSTableView的單元格調用viewForTableColumn?

+0

我有同樣的問題。我希望NSViewController實例是基於視圖和基於表格的代表。不幸的是,雖然tableView:viewForTableColumn:row:方法是針對基於單元的方法調用的,但它的內容根本不顯示。 – dzolanta 2012-05-31 10:13:31

回答

5

如果NSTableView的代表實現方法tableView:viewForTableColumn:row:NSTableView會自動切換到基於查看。 您必須爲兩個表格視圖製作不同的代表

1

基於視圖的表格視圖和基於單元格的表格視圖不會混合,您可以有兩個不同的代表或者您可以將單元格基錶轉換爲查看基於表,然後使用下面的代碼在tableView:viewForTableColumn:row:使它看起來像基於細胞的表:

NSTableCellView *cell = [tableView makeViewWithIdentifier:@"textFieldCell" owner:self];

其中textFieldCell是小區的標識。然後,設置你想使用此代碼出現在單元格中字符串:

[[cell textField] setStringValue:desiredString];

在方法的最後返回可變單元

相關問題