1

について問題が発生しました。次のNSTableViewようなものです。テーブルビューの1つのデータソースは次のように呼び出されます。

- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView
{
    return [self.dataArray count];
}

しかし、これは決して呼ばれません:

- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
{
    // the code 
}

[NSTableView reloadData]配列に実際にデータが含まれていることを確認し、メインスレッドで呼び出されたことも確認し ました。

だから私はこの奇妙な問題について完全に迷っています。誰かがいくつかのヒントを与えるでしょうか?ありがとう!

4

1 に答える 1

2

初期コードをからに移動しawakeFromNibましたがinit、正しく呼び出されました。しかし、私はまだ本当の理由を知りません。NSObjectテーブルビューを持つクラスはのサブクラスであり、のサブクラスではないため、ビューのライフサイクルにとって重要だと思いますNSViewController

于 2012-09-06T08:30:31.493 に答える