Как установить цвет фона ячейки с типом NSButtoncell в NSTableView?

StackOverflow https://stackoverflow.com/questions/2062605

Вопрос

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

- (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 (для флажка).Как это исправить?

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

Это было полезно?

Решение

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

Более того, я не могу найти setDrawsBackground: метод для НСбуттонселл;Я могу найти его только для НСтекстфиелдцелл.Вы пробовали удалить звонок?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top