SwiftUI
-
SwiftUI에서 UUID를 활용한 뷰 갱신 업데이트SwiftUI 2025. 1. 9. 18:53
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI에서 실제 많이 사용될 수 있는 UUID를 활용한 뷰 갱신 업데이트에 대해 알아보겠습니다 🙋🏻 무엇을 해보는걸까?SwiftUI로 만약 애니메이션을 구현하거나 할 때 가장 까다로울 수 있는 부분이 상태 변경 시 애니메이션을 새로 시작하는것이죠.특히, Lottie와 같은 서드파티 애니메이션 라이브러리를 사용할 때 이러한 문제가 더욱 두드러질 수 있습니다.그래서 이번에 UUID를 활용하여 해결해보고자 합니다. 문제 상황우선 간단한 로티를 사용한 코드를 볼께요. import Lottieimport SwiftUI// 첫 번째 화면struct FirstView: View { @State var isGrowUp: Bool = false var actio..
-
SwiftUI Text에 stroke 적용하기 (feat. UIKit)SwiftUI 2025. 1. 2. 18:49
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI Text에 stroke를 적용하는 두번째 방법에 대해 알아보겠습니다 🙋🏻 이전 첫번째 방법에 대해 기술한적이 있어요. SwiftUI의 Text에 stroke 적용하기안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI의 Text에 테두리에 stroke를 넣는 방법에 대해 한번 구현해보겠습니다 🙋🏻 간단하기도 하고 제가 필요해서 한번 모디파이어로 빼보면서 만green1229.tistory.com 해당 방법에서는 SwiftUI Text 자체에 shadow를 적절히 주어 표현했었는데요.한계가 있었습니다.stroke 두께를 늘릴수록 shadow가 크게 적용되고 그에 따라 사실 상 aliasing, 계단 현상으로 디자인이 매끄럽지 못하게 나..
-
SwiftUI의 Custom Grid로 카테고리 뷰 구현하기SwiftUI 2024. 12. 23. 18:55
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI의 Custom Grid를 적절히 구현하여 우리가 많이 접할 수 있는 카테고리 뷰 시스템을 한번 만들어보려고 합니다 🙋🏻 오늘의 포스팅은 새로운 지식의 습득보다는 실제 많이 쓰일 수 있는 뷰 개발에 초점을 맞춰 코드가 많습니다 😃 SwiftUI의 Custom Grid로 카테고리 뷰 구현하기그럼 가장 먼저 오늘 어떤걸 구현해볼지 결과물부터 보고 가볼까요? 자 요런걸 만드려고 합니다! 일반적인 메인 카테고리와 그 메인 카테고리를 선택하면 나오는 서브 카테고리의 형태 구조입니다.물론, 카테고리 형태는 정말 다양하겠지만 이렇게 서브 카테고리에 대해서 그리드로 한번 작업해보려고 합니다.여기서 저는 예시로 우리가 많이 접할 수 있는 회원 정보를 입력하..
-
UIGestureRecognizerRepresentable 사용하기SwiftUI 2024. 12. 16. 18:55
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI의 UIGestureRecognizerRepresentable에 대해 학습해보겠습니다 🙋🏻 UIGestureRecognizerRepresentable?UIGestureRecognizerRepresentable는 이번 WWDC 2024에서 소개되었는데요.iOS 18이상에서 사용 가능합니다. UIGestureRecognizerRepresentable는 SwiftUI에서 UIKit의 제스처 인식기를 사용할 수 있게 해주는 프로토콜이에요.우리 UIViewRepresentable이 SwiftUI에서 UIKit의 뷰를 사용할 수 있게 도와주는 프로토콜이었던것과 같은 맥락이죠.해당 프로토콜을 통해서 우리는 SwiftUI 뷰에서 UIKit의 다양한 제스처 인..
-
SwiftUI에서 인터랙티브 푸시 네비게이션 사용하기SwiftUI 2024. 12. 12. 18:46
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI에서 쉽게 인터랙티브 푸시 네비게이션을 사용하는걸 구현해보려고 합니다 🙋🏻 먼저 인터랙티브 푸시 네비게이션도 다양한 쓰임이 있을건데, 현재 제가 하고자 하는 결과물부터 공유해볼께요! 두둥 - 😃 이런걸 해보려고 합니다! 즉, 탭뷰와 같은걸 사용하지 않고 엣지 스와이프를 통해 이전과 이후 뷰로 슬라이드 형식으로 자연스럽게 전환되도록 인터랙티브 푸시 네비게이션을 SwiftUI에 얹어보려고 합니다 🙋🏻 그럼 한번 시작해볼까요? 인터랙티브 푸시 네비게이션 구현하기먼저 제가 하는 방식으로는 SwiftUI에서만 모든걸 해결할 수 없어요.그렇기에 UIKit의 UINavigationController를 채택한 별도의 InteractivePushNavi..
-
SwiftUI - 키보드 노출 여부에 따른 뷰 오프셋 조정SwiftUI 2024. 11. 29. 00:40
안녕하세요. 그린입니다 🍏이번 포스팅에서는 키보드 노출 여부에 따라 뷰를 키보드에 가리지 않고 나타나도록 오프셋 조정하는 방법에 대해 한번 구현해볼까해요 🙋🏻 키보드 노출 여부에 따른 뷰 오프셋 조정SwiftUI로 텍스트 필드나 텍스트 뷰를 사용할때 키보드가 노출되고 뷰의 영역에서 사용성 어려움을 겪는 경우가 종종있어요 😅 예를들어 최하단에 텍스트 필드가 그려지고 있고 텍스트 필드를 포커싱 했을때, 키보드가 노출되는데, 키보드 영역이 어떠한 뷰들을 가리곤 합니다. 이를 개선하기 위해서는 키보드가 노출될때 해당 텍스트 필드 영역의 오프셋을 조정하여 키보드에 가리지 않고 뷰를 다 보이도록 해볼 수 있어요! 사실 SwiftUI는 기본적으로 키보드 회피 동작을 제공해주고 있어요.그래서 단순하게 텍스트 필..
-
SwiftUI - refreshable ScrollViewSwiftUI 2024. 11. 22. 20:40
안녕하세요. 그린입니다 🍏이번 포스팅에서는 refreshable 기능을 가진 ScrollView를 만들어보려고 합니다 🙋🏻 사실, 이전 SwiftUI에서 refreshable이라는 뷰 모디파이어가 존재합니다. 관련해서 포스팅은 아래에서 정리해봤어요! SwiftUI - refreshable안녕하세요. 그린입니다🍏 이번 포스팅에서는 SwiftUI의 List에서 사용 가능한 refreshable이라는 새로 고침 기능에 대해 알아보겠습니다🙌 우선 해당 기능은 iOS 15 부터 사용이 가능해요! 참고로 WWDCgreen1229.tistory.com 요약하자면, 사실 아주 유용한 모디파이어에요.스크롤 환경에서 최상단에서 아래로 드래그 했을 시 새로고침 되는 기능을 아주 손쉽게 구현해줬으니까요..!! 그런..
-
Pagination (feat. SwiftUI & MVVM)SwiftUI 2024. 11. 15. 18:56
안녕하세요. 그린입니다 🍏이번 포스팅에서는 페이지네이션 기초에 대해 구현해보려 합니다 🙋🏻근데, SwiftUI와 MVVM을 곁들인.. 거기다 Concurrency도 곁들인~ 사실 개념적으로 어려운게 전혀 아니기에 바로 들어가보겠습니다! Pagination?페이지네이션은 데이터를 여러 페이지로 나눠서 다루는 기술이죠.예를 들어, 서버와 통신을해서 게시글을 보여줘야하는 데이터가 무수히 한 만개쯤 많다고 생각해볼께요.그랬을때 이 데이터를 모두 한번에 다 가져오고 또 보여준다는건 굉장한 성능 낭비일거에요.한 화면에 스크롤을 내리거나 다음 페이지로 넘어가지 않는 이상 10개정도만 보여줄 수 있을때 남너지 9990개는 아직 보여줄수도 없는데도 들고 있어야 하니까요 🥲 그래서, 페이지네이션을 통해 데이터를 원..