【发布时间】:2025-12-08 23:45:02
【问题描述】:
在我的大纲视图中,我使用的是 CustomCell,它只是从 Cocoa ImageTextCell RefrenceCode 中获取代码并进行了一些修改,
是否可以更改单元格的突出显示颜色?
到目前为止,我已经完成了以下操作, - (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView {
if([self isHighlighted]){
NSColor *evenColor = [NSColor colorWithCalibratedRed:.1 green:0.1 blue: 0.1
alpha:1.0];
[evenColor set];
NSRectFill(cellFrame);
bSelected = YES;
}
}
这是可行的,但是我可以看到,高亮单元格颜色首先从系统默认颜色开始,然后,它将被 evenColor 覆盖, 感觉是cellFrame.origin.x的问题,不是从0开始的,
应用这段代码后输出如下
----- My Custom Cell ----------------
======================================
| blue | |
| color| even Color |
| | |
======================================
我所期待的
----- My Custom Cell ----------------
======================================
| |
| even Color |
| |
======================================
【问题讨论】:
标签: objective-c cocoa nstableview nsoutlineview nscell