2013-10-20 3 views
2

(. 내가 패턴 이미지 배경을 NSWindow을 가지고 있기 때문에 내가 이렇게 나는 cellView 만 NSLabel을 보여줄 필요) :
NSTableCellView 투명 배경

- (void)drawRect:(NSRect)dirtyRect 
{ 
    [[NSColor clearColor] setFill]; 
    NSRectFill(dirtyRect); 
    [super drawRect:dirtyRect]; 
} 

및 I 이 결과를 얻을, 그것은 만드는 전체 NSWindow 투명 :

enter image description here

내가 같은 결과를 원하는 VOX mac app는 않습니다 (빨간색 일식 봐, 당신은 cellView 부모의 배경 이미지와 투명 참조)
enter image description here

답변

0

나는 내 문제를 해결했습니다
나는 엑스 코드에서 몇 가지 트릭 (은 설치 과정의 읽어 보시기 바랍니다) MMScroller 라이브러리를 사용 :

내가 Instector 속성 있는 tableView에 교류 행을을 확인. 그런 다음, 그냥 에서 clearColor로 tableView 배경색을 설정 속성 검사기 작업을 수행했습니다. 내가 정의 셀 클래스를 사용하기 때문에

enter image description here

+0

_tableView.usesalternatingRowBackgroundColors = NO; – johndpope

0


음 두 가지 방법은 셀의 색상을 변경할 수 있습니다. 1) 대표 구현 -

- (void)tableView:(NSTableView *)tableView 
    willDisplayCell:(id)cell 
    forTableColumn:(NSTableColumn  
    *)tableColumn 
    row:(NSInteger)row 

다음 해당 exract 셀 값에 기초하고 setBackgroundColor API를 사용한다.

2) 두 번째 방법은 셀 값을 반환하는 tableview의 preparecellcolumn api를 사용하고 backgroundcolor을 설정하는 것입니다.

+0

나는 이미 셀의 인스턴스를 가지고있다. 레이어에 대해 setBackgroundColor를 설정했지만 작동하지 않습니다. –

+0

셀 안의 값을 올바르게 확인하고 있습니까? –

+0

Offcourse, 자기 자신을 호출하는 것은 셀 인스턴스 자체입니다 :) –