SwiftUI
-
SwiftUI - AppStorageSwiftUI 2024. 3. 7. 19:10
안녕하세요. 그린입니다 🍏 이번 포스팅에서는 SwiftUI에서 사용되는 AppStorage에 대해 학습해보겠습니다 🙋🏻 이번 포스팅의 내용은 UserDefaults를 안다는 가정하에 진행하며, 내용은 짧습니다ㅎㅎ AppStorage? AppStorage는 UserDefaults로 부터 값을 반영하고 값 변경에 대한 뷰를 무효화하는 프로퍼티 래퍼로 사용되는 구조체입니다. iOS 14이후부터 사용할 수 있고 구현된 정의는 아래와 같습니다. 즉, 쉽게 생각하면 UserDefaults의 SwiftUI용이라고 보면 됩니다. @frozen @propertyWrapper struct AppStorage 기본적인 이니셜라이저 형태는 이러해요. init( wrappedValue: Value, _ key: String, ..
-
SwiftUI로 동적 뷰 레이아웃 구성하기SwiftUI 2024. 1. 18. 18:33
안녕하세요. 그린입니다 🍏 이번 포스팅에서는 SwiftUI로 동적 뷰 레이아웃을 구성하는 방법에 대해 소개해볼까 합니다 🙋🏻 본격적으로 알아보기에 앞서 어떤걸 해보고 싶은지 한번 스포하고 갈께요! 요런 뷰를 구성해보려 하거든요! 😃 언뜻보기에는 간단해보이나, 세부 조건들이 있어요. 1️⃣ 해당 칩스(뱃지)에 들어간 Text의 길이만큼 칩스가 다 노출되어야함 2️⃣ 화면을 벗어나거나 짤리면 안됨 3️⃣ Text의 길이가 길어서 배치할 수 없으면 다음 행으로 이동하여 배치 4️⃣ 스크롤 없이 화면에 모두 노출해야함 이런 Text 길이에 따라 유동적으로 칩스 뷰를 배치하는 그런 구현을 해보려고 합니다! 여러분들이라면 이 뷰를 어떻게 구현하실것 같으신가요? 🤔 음... 그냥 LazyVGrid 적절히 잘 쓰면 되..
-
SwiftUI에서 shadow와 blur 사용하기SwiftUI 2024. 1. 8. 19:30
안녕하세요. 그린입니다 🍏 이번 포스팅에서는 자주 사용하고 있었는데 한번도 글로 정리해보지 않았던 shadow와 blur 모디파이어에 대해 정리해보겠습니다 🙋🏻 주의 ⚠️ 내용 다소 짧음! 공식문서들을 기반으로 알아볼거에요! 그럼 shadow부터 가시죠 🚀 shadow SwiftUI에서 shadow 모디파이어는 뷰에 그림자를 추가해줍니다. 조금 더 뷰가 입체적으로 보일 수 있기에 저는 다른 뷰들과 조금 영역을 구분되어 보여줄때 자주 사용합니다! SwiftUI를 적용할 수 있는 iOS 13.0 이상 버전이라면 사용 가능합니다. func shadow( color: Color = Color(.sRGBLinear, white: 0, opacity: 0.33), radius: CGFloat, x: CGFloat ..
-
STT를 이용해 음성을 텍스트로 변환해보자 🗣️SwiftUI 2023. 12. 26. 18:57
안녕하세요. 그린입니다 🍏 이번 포스팅에서는 iOS의 STT를 이용하여 음성을 텍스트로 변환하는 학습을 해보겠습니다 🙋🏻 순서는 STT가 무엇인지 알아보고 이를 프로젝트에서 활용하여 직접 음성을 텍스트로 변환해보는 코드까지 구현해보겠습니다! 그럼 STT가 대체 뭔지 알아볼까요? STT(Speech-to-Text)란? STT는 Speech-to-Text의 약자이며, 음성을 텍스트로 변환하는 기술을 말합니다. 주로, 음성 인식이나 음성 변환이라고도 불리고 음성 데이터 자체를 컴퓨터가 이해할 수 있는 형태로 변환하는 과정을 포함해요! 흔히 STT말고 TTS(Text-to-Speech)도 많이 들어보셨을텐데요! 이름에서도 유추할 수 있듯이 서로 반대의 개념입니다. TTS는 텍스트를 음성 오디오로 변환하는것이고 ..
-
SwiftUI - trim & maskSwiftUI 2023. 12. 21. 19:20
안녕하세요. 그린입니다 🍏 이번 포스팅에서는 SwiftUI의 trim과 mask에 대해 학습해보려고 합니다 🙋🏻 우선 이 두개의 모디파이어를 학습해보려는 이유는 간단했어요! 도형이나 이미지를 잘라서 표시하거나 진행 상황에 따라 가려진 부분을 점진적으로 채워나가려는 구현을 알아보다가 이 두가지를 찾았습니다. trim과 mask의 결과뷰는 비슷해보이지만 동작하는 방식에서 차이가 있기에 우선 둘 다 어떻게 사용하는것인지 알아보시죠! 먼저 trim부터 알아보겠습니다. trim(from:to:) trim 메서드는 도형의 특정 부분을 잘라내 보여주는 역할을 해줍니다. 해당 메서드는 Shape 프로토콜을 준수하는 모든 도형에 사용할 수 있어요! trim 메서드의 정의는 이렇습니다. func trim( from sta..
-
SwiftUI에서 VoiceOver 사용하기SwiftUI 2023. 11. 23. 10:25
안녕하세요. 그린입니다 🍏 이번 포스팅에서는 SwiftUI에서 VoiceOver를 적용하고 사용하는 방법에 대해 알아보려합니다 🙋🏻 이번 포스팅에서는 VoiceOver가 무엇이고 SwiftUI에서 어떻게 적용 및 사용되는지 알아보고 어떤 모디파이어들이 사용될 수 있는지 알아볼께요 😀 근데 갑자기 VoiceOver를 왜? 키오스크 및 모바일앱 장애인 접근성 제고를 위한 정당한 편의 제공 < 전체 < 보도자료 < 보도자 모든 국민의 건강, 삶의 질 향상을 위해 노력하는 보건복지부 홈페이지입니다. www.mohw.go.kr 정부에서 하라고 합니다ㅎ 요약하자면 이렇습니다. 【모바일앱】 ○ 모바일앱은 스마트폰, 스마트패드, 스마트워치 등 모바일기기에 탑재되는 응용소프트웨어로, 키오스크와 마찬가지로 고시에 따른 접..
-
BorderlessButtonStyle의 활용SwiftUI 2023. 10. 19. 08:35
안녕하세요. 그린입니다 🍏 이번 포스팅에서는 SwiftUI의 버튼을 다룰때 스타일을 지정할 수 있는데요. 그 중 BorderlessButtonStyle을 알아보고 그 스타일을 어떻게 실전에서 적용하는 경우가 있을지 코드로 구현해보겠습니다 🙋🏻 우선 BorderlessButtonStyle에 대해 공식문서를 통해 알아볼까요? BorderlessButtonStyle 정말 해당 스타일의 의미는 보더 즉, 테두리를 적용하지 않은 버튼 스타일입니다. 기본적으로 Button의 buttonStyle 모디파이어를 통해 버튼 스타일을 제공하고자 할때, static 변수로 .borderless가 있기에 쉽게 사용할 수 있습니다. 이게 끝이에요 설명은 사실! 그럼 디자인적인것 외에 현업에서 이 BorderlessButtonS..