안녕하세요. 린다입니다.오늘은 Tuist와 Swift를 함께 사용할 때 어떻게 Typography를 구현하면 좋은지... 에 대해서 글을 작성해보려고 해요. 사실 저번에도 Tuist에서 custom font 사용하기에 대한 주제로 글을 올린적이 있는데요.단순하게 enum으로 폰트를 정의하고 Extension View로 빼서 사용하면적용은 잘 되지만, 핸드폰 시스템의 텍스트 크기 변경에 따라서 앱 내부 폰트 사이즈도 변경되더라구요.그래서, 이번에는 어떻게 Typography를 구현하면 좋은지를 주제로 더 정확하게 작성하기로 했습니다. 다들 아시겠지만, Tuist + Custom Font 하면 해당 모듈에 이런 FontFamily가 생성되요. 그리고 다른 모듈에서 해당 Font를 사용하기 위해서는 App..
안녕하세요. 린다입니다.두 개의 프로젝트에서 Carousel 뷰를 모두 사용 중인데요. 17부터는 다양한 modifier가 있는 carousel 을 사용할 수 있지만..최소 지원버전이 모두 16이기 때문에 커스텀으로 진행했어요. 프로퍼티 설명edgeSpacing: 두번째 카드부터 보이는 양옆에 나와있는 카드들의 크기contentSpacing: 카드와 카드 사이의 spacingtotalSpacing: carousel뷰가 들어가는 mainView에서의 전체 paddingcontentHeight: carousel뷰 heightcarouselContent: carousel를 구성할 View (@escaping == 밖에서 정의해서 사용) totalSpacing의 마지막 padding은 필요에 따라 빼고 사용하셔..
안녕하세요. 린다입니다. 오늘은 2번째 글에 이어서 제가 offset과 position을 처음 접할 때 헷갈렸던 부분을 정리한것을 작성해보려고 합니다. 바로 대체 (0, 0)의 기준은 어디이며, 어떻게 위치되는 것이지? 가 항상 헷갈렸는데요.. 이를 올바르게 이해하기 위해서는 (https://sy-catbutler.tistory.com/67) (https://sy-catbutler.tistory.com/68) 를 먼저 보고오시는 걸 추천드립니다. 1. Offset - 뷰를 오프셋 매개변수에 지정된 수평 및 수직 양으로 계산한다.(배치한다) offset의 위치가 200, 200인데 어디를 기준으로 200, 200이고 position과는 왜 다를까? 이유를 알기 위해서는 레이아웃 프로세스를 알아야함! 지금 ..
안녕하세요. 린다입니다. 저번 WWDC 영상을 보면서 혼자 이것저것 레이아웃 프로세스에 대해서 공부했던? 확인했던..? 예제들을 정리해보려고 합니다. SwiftUI의 레이아웃 프로세스에 관한 글을 안 읽어보셨다면 (https://sy-catbutler.tistory.com/67) 읽고오시는걸 추천드립니다 !! 그리고 추가적으로 해당 글에서는 offset과 position에 대해서도 다뤄보려고 해요. 두개의 차이점이 무엇인지도 정리해보려고 합니다. 1. offset 공식문서에 있는 Offset의 설명을 보면 Offset this view by the horizontal and vertical amount specified in the offset parameter. 이 보기를 오프셋 매개변수에 지정된 수평..
안녕하세요. 린다입니다. 요즘 Animation을 공부하면서 WWDC를 잘 활용하고 있는데요. DragGesture에서 Position, Alignment까지 보고 있습니다.. 정말 기초적인 정보가 잘 담겨져 있는 영상인것 같아서 가볍게 정리한 내용인데 블로깅하려고 가져왔어요! Building Custom Views with SwiftUI - WWDC19 - Videos - Apple Developer Building Custom Views with SwiftUI - WWDC19 - Videos - Apple Developer Learn how to build custom views and controls in SwiftUI with advanced composition, layout, graphics,..
안녕하세요. 린다입니다. SwiftUI에는 TextEditor에 배경색을 넣거나 다양한 UI로써 보이도록 하고 싶다면, 커스텀을 해야하는데요. 이번 SYM을 배포하면서 구현했던 TextEditor를 공유해보려고 합니다. 저희의 TextEditor 조건은 2가지였어요. 1. 글자수 200 미만만 입력 가능한 TextEditor 2. Placeholder가 있는 TextEditor 코드 공유 struct CustomTextEditorStyle: ViewModifier { let placeholder: String @Binding var text: String func body(content: Content) -> some View { content .padding(15) .background(alignmen..