2011-02-15 4 views
1

NSTextView 개체에서 텍스트 배치를 해제하는 방법을 지적하는 net (stackoverflow 포함)이 여러 군데 있습니다. 이 방법은 작동하지만 탭 중지에 문제가 있습니다. 기본값은 12 탭 스톱이며, 12 개를 사용하면 줄 바꿈이 시작됩니다. 확실한 해결책은 더 많은 탭 스톱을 갖도록 기본 NSParagraphStyle을 변경하는 것이지만, 이렇게하는 것이 적절한 방법이라고 생각하지 않습니다. 이상적으로 나는 xcode가 가지고있는 것처럼 "무한대"의 탭 스톱을 갖고 싶습니다.비활성화 된 텍스트 랩으로 NSTextView에서 탭 제한을 무제한으로 유지하는 방법

이것을 달성 할 수있는 방법이 있습니까?

답변

4

이 코드는 1/2 인치 탭 간격으로 새 단락 스타일을 만들고 변수 textView에서 기본 단락 스타일과 현재 단락 스타일로 설정합니다.

NSMutableParagraphStyle *style = [[NSMutableParagraphStyle alloc] init]; 
[style setDefaultTabInterval:36.]; 
[style setTabStops:[NSArray array]]; 
[textView setDefaultParagraphStyle:style]; 
[textView setTypingAttributes:[NSDictionary dictionaryWithObject:style forKey:NSParagraphStyleAttributeName]]; 
[style release]; 
+0

제안 된 코드를 nstextview의 하위 클래스에 추가했습니다 (당연히 textView를 자체 변경). 아직도 나는 멈춤 당 4 글자로 12 tabstops를 얻고있다 (monospo를 사용하는 mon, monaco). –

+0

컨텍스트로 게시 할 수 있습니까? 내 프로젝트 중 하나에서이 코드를 복사했고 나에게 잘 돌아갔다. – ughoavgfhw

+0

나는 그것을 만들었다. 문제는 프로그래밍 방식으로 NSAttributedString 객체를 추가하는 텍스트보기에서 내용을 작성한다는 것이 었습니다. 나는 당신이 제안한 스타일을 귀속 문자열에 넣었고 모든 것이 작동했습니다. 감사. –

관련 문제