Как установить цвет фона ячейки с типом NSButtoncell в NSTableView? - PullRequest
1 голос
/ 14 января 2010

Это мой делегат представления таблицы:

- (void)tableView:(NSTableView *)tableView willDisplayCell:(id)aCell forTableColumn:(NSTableColumn *)tableColumn row:(int)row
{
    id theRecord;
    NSMutableString *gid;

    theRecord = [tableDataSource objectAtIndex:row];
    gid = [theRecord objectForKey:@"gid"];

    if (([gid intValue] % 2) != 0)
    {
        [aCell setDrawsBackground: YES];
        [aCell setBackgroundColor: [NSColor colorWithCalibratedRed: 237.0 / 255.0
                                                             green: 243.0 / 255.0
                                                              blue: 254.0 / 255.0
                                                             alpha: 1.0]];

    }
    else
    {
        [aCell setDrawsBackground: NO];
    }
}

Это нормально работает для отображения нормальной ячейки, но представление таблицы замораживается после добавления ячейки с типом NSButtonCell (для флажка). Как это исправить?

Любая помощь будет оценена.

1 Ответ

1 голос
/ 14 января 2010

Согласно справке NSButtonCell , вы можете указать цвет фона только для кнопок без полей. Вы пытались использовать кнопки без полей?

Более того, я не могу найти setDrawsBackground: метод для NSButtonCell ; Я могу найти его только для NSTextFieldCell . Вы пытались удалить звонок?

...