2016년 9월 27일 화요일

NSTextView Cheatsheet

개인적으로 필요해서 찾아봤던 NSTextView 관련 팁들을 별도로 정리해 본다.

How to set or get string?

NSTextView 레퍼런스를 보면 텍스트뷰 내용을 입력하거나 읽어오는 방법을 찾을 수 없어서 곤혹인데, 부모 클래스인 NSText 에서 찾아봐야 한다.
print("Text View String = \(someTextView.string)")

someTextView.string = "String Value"
// or
someTextView.attributedString = someAttributedString

Left Padding

그냥 텍스트 외곽에 여백을 두려면 textContainerInset 프로퍼티를 세팅하면 되겠지만 왼쪽에만 여백을 주고 싶다면? 일단 오버라이딩 해서 textContinerOrigin 을 수정하는게 가장 간단하다. 아래 예제는 왼쪽에 8픽셀 여백을 두기 위한 예제이다.
class SomeTextView: NSTextView {
  ...
  override var textContainerOrigin: NSPoint {
    let originalOrigin = super.textContainerOrigin
    // Padding Left 8 Pixel
    return NSPoint(x: originalOrigin.x + 8, y: originalOrigin.y)
  }
  ...
}

댓글 없음 :