2013-07-16 5 views
2

내 xib에 NSTokenField를 만들었습니다. 그 tokenField 안에 다른 색으로 토큰을 표시하고 싶습니다. 의미 : 일부 토큰은 파란색이고, 나머지는 빨간색입니다 (내용에 따라). 그게 가능하니?NSTokenField : 토큰의 색상이 다릅니다.

다음 코드는 저에게 적합하지 않습니다. 나는 누군가가 나를 도울 수 있기를 바랍니다 :

- (id)tokenField:(NSTokenField *)tokenField representedObjectForEditingString:(NSString *)editingString 
{ 
    id returnRepresentedObject = nil; 

    NSTokenFieldCell *tf = [[NSTokenFieldCell alloc] init]; 
    tf.stringValue = editingString; 
    tf.backgroundColor = [NSColor redColor]; 
    returnRepresentedObject = tf; 

    return returnRepresentedObject; 
} 

결과 :!. 모든 토큰 :-(... 블루 남아

어떤 도움이 높게 평가 될 것이다

답변

1

그것의 가능한 개인 API를 사용하여 서브 클래스 NSTokenAttachmentCell (개인) 및 NSTokenFieldCell.

Sample project

enter image description here

BWToolkit에서 BWTokenAttachmentCell 및 BWTokenFieldCell 클래스와 NSTokenAttachmentCell 클래스 덤프를 사용하십시오. BWTokenAttachmentCell의 초기화 방법을 수정하십시오.

[샘플 프로젝트

참고 :

를 사용하여 당신이 맥 앱 스토어 타겟팅하지 않을 경우이 방법.

+0

감사합니다. @Parag 그러나 다른 색으로 다른 셀을 색칠하는 방법에 대해 궁금해했습니다. 첫 번째는 파란색, 두 번째는 빨간색 등입니다. 원래의 질문을 명확히 할 것입니다. – Nili

1

당신은 아마도 자신의 역할을해야 할 것입니다. 고급 코코아 텍스트 처리에 대한 2010 년 wwdc 비디오가 있습니다. NSTokenField NSTextAttachments를 사용하여 토큰을 렌더링합니다.