Измените цвет разделителя на фон или удалите его из NSTableView
Я хочу удалить цвет разделителя в NSTableView
на основе View.
Он выглядит следующим образом:
![enter image description here]()
Для UITableView существует метод setSeparatorColor:
, но не для NSTableView.
Решения будут высоко оценены.
Ответы
Ответ 1
Я сделал это как:
Изменен интервал между ячейками:
[aTableView setIntercellSpacing:NSMakeSize(0, 0)];
И изменив высоту ячейки, установите ширину представления на 30.f
, выделенная ячейка имеет 35.f
.
Теперь он идеально подходит, снимок экрана:
![enter image description here]()
Ответ 2
Для NSTableView
, Interface Builder имеет настройки для Horizontal Grid
, Vertical Grid
и Grid Color
. Они отражены в API как -setGridStyleMask
и setGridColor
.
Они делают именно то, что вы хотите.
[table setGridColor:[NSColor clearColor]];
[table setGridStyleMask:NSTableViewGridNone];
Ответ 3
Ответ для построителя интерфейса:
![введите описание изображения здесь]()
Ответ 4
Возможно, я мог бы упомянуть, что в таблицах, основанных на представлении, NSTableRowView отвечает за рисование разделителей. Поэтому в инспекторе для таблицы вы устанавливаете сетку в "None" и реализуете drawSeparatorInRect:
в вашем подклассе NSTableRowView, что в вашем случае означает, что оно пустое.
Ответ 5
IMHO, Apis NSTableView немного странно.
Например:
Если вы установите сетку в "None" или "NSTableViewSolidVerticalGridLineMask", drawSeparatorInRect: не будет вызван.
Действительно!!!
Так drawSeparatorInRect: называется OMLY, когда NSTableViewSolidHorizontalGridLineMask
Итак, как мне настроить вертикальную сетку?
Ну, я не могу легко? Без необходимости копаться в монстре NSTableView