2013-08-13 12 views
3

NSTextField으로 예를 들어 this 질문과 같이 숫자 만 허용하는 사용자 정의 포맷터를 작성한다고 말하면 easier setFormatter을 호출 할 수 있습니다.NSTextView setFormatter?

하지만 NSTextView에 포맷터를 적용하려면 어떻게해야합니까? 제가 뭔가를 간과하지 않는 한, 포맷터를 설정하는 방법이없는 것처럼 보입니다.

이 문제를 해결하는 방법에 대한 제안 사항이 있으십니까?

+1

이 부분을 살펴보십시오. http://stackoverflow.com/questions/12919786/how-do-i-set-a-custom-nsformatter-to-a-nstextview –

+0

이 항목이 누락되었습니다. 질문이 있거나 오타가 있습니다. 첫 번째 단락에서 "우리는 쉽게 부를 수있다"고 말하면서 두 번째 단락에서 "길을 찾지는 않는다"라고 말합니다 ... 문제가 무엇입니까? –

+0

@JamesWebster 내 잘못입니다. 'setFormatter'를 호출 할 수있는 NSTextField입니다. 그 점을 지적 해 주셔서 감사합니다! – Kyle

답변

2

NSFormatter은 한 줄의 문자열 형식으로 설계되었습니다. 이 의도는 일반적으로 한 줄을 표시하는 NSTextField과 일치합니다 (특히 포맷터를 사용하는 경우).

포맷터의 포인트는 표시 할 기존 텍스트의 형식을 지정하고 사용자의 텍스트 입력을 확인하는 것입니다. NSTextView이있는 포맷터를 사용하여이 두 가지 작업을 모두 수행 할 수 있습니다. 텍스트를보기 (stringForObjectValue:)에 추가하거나 사용자가 입력 할 때 (textView:shouldChangeTextInRange:replacementString:isPartialStringValid:newEditingString:errorDescription:) 텍스트를 처리하기 위해 약간의 작업 만하면됩니다.