버그 잡이

SwiftUI - scrollIndicators() 로 textEditor 스크롤바 hidden 처리하기 본문

SwiftUI

SwiftUI - scrollIndicators() 로 textEditor 스크롤바 hidden 처리하기

버그잡이 2023. 6. 18. 23:50

 

textEditor 우측에 있는 scrollIndicator가 보기 안 좋습니다.

이를 안 보이게 하고 싶습니다.

 

구글링을 해봤습니다..

https://stackoverflow.com/questions/73702315/texteditor-scroll-hidden-in-swiftui

 

TextEditor(text: $context)
    .introspectTextView { textView in
        textView.showsVerticalScrollIndicator = false
    }

 

introspect라는 라이브러리가 있다는 것을 알게 되었네요.

UIKit의 속성들을 쉽게 가져다 쓸 수 있게 도와주는 라이브러리입니다.

(사용하려면 cocoaPod이나 spm으로 해당 라이브러리를 추가하고 import 해줘야 합니다.)

 

위를 따라해봤는데 저는 안 됐습니다..

저는 macOS앱을 만드는 중이라 NSTextView의 속성을 바꿀 수 있는데 
NSTextView는 showVerticalScrollIndicator 속성이 없네요 ㅠ

 

 

scrollIndicators()

 

이런 저런 삽질을 하다가 View에  scrollIndicators() 라는 함수가 있는 것을 발견합니다.

View의 instance method이고

Scroll Indicator 노출 여부를 설정할 수 있는 함수입니다.

 

iOS 16, macOS 13 부터 쓸 수 있네요.

 

해당 속성을 주니 불필요한 scrollBar가 사라졌습니다.

TextEditor(text: $text)
            .scrollIndicators(.never)

 

별거 아닌데 삽질을 많이 했네요.

 

 

 

 

 

반응형
Comments