개발/아이오에스

swiftui - ViewModifier로 재사용 가능한 뷰 정의하기

dev.jake 2023. 11. 23. 22:44

 

swiftui를 사용하다보면 이렇게 중복된 코드를 발견한다.

 

해당하는 중복코드를 ViewModifier 를 사용해 아래처럼 정의를 할 수 있다.

 

 

생성한 Modifier를 사용한 모습

 

ViewModifier는 SwiftUI에서 재사용 가능한 뷰 수정자를 정의하기 위한 프로토콜입니다. 이를 사용하면 여러 뷰에서 동일한 스타일이나 레이아웃을 쉽게 공유할 수 있습니다. ViewModifier를 구현하려면 body 프로퍼티를 제공하는 뷰를 반환하는 body(content:) 메서드를 구현해야 합니다.

 

위의 코드에서

ThreadsTextFieldModifier는 ViewModifier 프로토콜을 따르며,

TextField에 여러 수정자를 적용합니다.  modifier 메서드는 View 프로토콜의 일부이며, 기본적으로 제공되는 메서드로, 사용자 정의 수정자를 뷰에 적용하는 데 사용됩니다. 이러한 사용자 정의 수정자를 만들면 코드의 재사용성이 향상되고, 일관된 디자인을 유지하는 데 도움이 됩니다.