2

だから私はココアの初心者であることを認めているので、初心者の質問をします。私はおそらくどこかでばかげたことを見逃しているだけですが、テーブルにデータを入力することができないようです。

私はテーブルビューの遊び場の例に従っていますが、基本的なTableViewウィンドウを模倣しようとするたびに、最初の行は追加した行数の高さになります(少なくともそれはどのように見えるかです.これが私のコードです:

- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row
{
    NSString *identifier = [tableColumn identifier];
    if ([identifier isEqualToString:@"filename"]) {
        // We pass us as the owner so we can setup target/actions into this main controller object
        NSTableCellView *cellView = [fileBrowserTable makeViewWithIdentifier:identifier owner:self];
        // Then setup properties on the cellView based on the column
        cellView.textField.stringValue = [fileList filenameAtIndex:row];
        cellView.imageView.objectValue = [[NSWorkspace sharedWorkspace] iconForFile:[fileList fullPathAtIndex:row]];
        return cellView;
    }
    else if ([identifier isEqualToString:@"path"]) {
        NSTextField *textField = [fileBrowserTable makeViewWithIdentifier:identifier owner:self];
        textField.objectValue = [fileList pathAtIndex:row];
        return textField;
    }
    else if ([identifier isEqualToString:@"preview"]) {
        NSTextField *textField = [fileBrowserTable makeViewWithIdentifier:identifier owner:self];
        textField.objectValue = [fileList previewAtIndex:row];
        return textField;
    }
    return nil;
}

古い学校のテキストフィールドセルを使用する場合、データの表示に問題がないことを言及する価値があると思います(もちろん、上記のコードはその場合は異なります)ので、値を保持するデータ構造に問題がないことを確信しています. 正しいデリゲートとデータ ソースも設定しました

「ファイル名」識別子を使用するセルは「画像とテキスト テーブル ビュー セル」を使用しますが、他のセルは「テキスト テーブル セル ビュー」のみを使用します。どちらも機能しないので、テーブルの設定方法に問題があると思います。しかし、私のテーブルを例のテーブルと比較すると、それはただの反省です (識別子ファイル名を差し引いたものです)。

よくわからないことに気付いたのは、例が次のように言っていることです。

NSTableView には 2 つの再利用識別子の関連付けがあります。「MainCell」と「SizeCell」はどちらも nib ATBasicTableViewCells.xib に関連付けられています。

この発言はよくわかりません。ただし、この例には ATBasicTableViewCells.xib が含まれておらず、それとの関連付け (コードまたは ib) もありません。

4

1 に答える 1

0

のrowSizeStyleをに設定しようとしましNSTableViewNSTableViewRowSizeStyleCustomか?[更新]あなたの質問を読み直してください、あなたの問題が何であるかは私にはわかりません。私が提供した解決策は、rowSizeStyleがcustomに設定されていない限り、考慮されない各セルのサイズの問題に関連しています。

于 2012-02-08T21:04:01.630 に答える