분류 전체보기
-
SwiftUI에서 인터랙티브 푸시 네비게이션 사용하기SwiftUI 2024. 12. 12. 18:46
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI에서 쉽게 인터랙티브 푸시 네비게이션을 사용하는걸 구현해보려고 합니다 🙋🏻 먼저 인터랙티브 푸시 네비게이션도 다양한 쓰임이 있을건데, 현재 제가 하고자 하는 결과물부터 공유해볼께요! 두둥 - 😃 이런걸 해보려고 합니다! 즉, 탭뷰와 같은걸 사용하지 않고 엣지 스와이프를 통해 이전과 이후 뷰로 슬라이드 형식으로 자연스럽게 전환되도록 인터랙티브 푸시 네비게이션을 SwiftUI에 얹어보려고 합니다 🙋🏻 그럼 한번 시작해볼까요? 인터랙티브 푸시 네비게이션 구현하기먼저 제가 하는 방식으로는 SwiftUI에서만 모든걸 해결할 수 없어요.그렇기에 UIKit의 UINavigationController를 채택한 별도의 InteractivePushNavi..
-
카카오톡 공유하기 (메시지 템플릿)iOS 2024. 12. 5. 18:58
안녕하세요. 그린입니다 🍏이번 포스팅에서는 흔히 많이 사용하는 카카오톡 공유를 해볼건데, 해당 공유를 커스텀하게 만들어보려고 해요! 🙋🏻 예를들어서 그냥 링크나 이미지만 보내는것이 아니라 카카오 SDK의 기능을 이용해 해당 카톡 공유 메시지에 버튼을 두어 다른 동작을 한다던지 등을 구현해보려 합니다 😃 그럼 바로 시작해볼까요? 카카오톡 공유하기 (메시지 템플릿을 활용한)가장 먼저 해야할 일은 당연하게도 카카오 SDK 라이브러리를 가져오는것이겠죠?저는 SPM으로 가져왔습니다. 해당 SDK를 우리 SPM에서 추가하듯이 쉽게 검색하여 가져옵니다.이때 여러 패키지 프로덕트로 여러개가 보일텐데 여기서 필요한것만 추가하셔도 됩니다!Add to Target을 꼭 해당 프로젝트 타겟으로 맞춰줘야지 안그러면 i..
-
Explore the Swift on Server ecosystem (feat. WWDC 2024)Swift 2024. 12. 2. 18:49
안녕하세요. 그린입니다 🍏이번 포스팅에서는 WWDC 2024에서 소개된 Explore the Swift on Server ecosystem에 대해 학습해보려 합니다 🙋🏻 Swift 언어는 우리가 애플 생태계의 앱을 개발하는데 주로 쓰이지만 서버 애플리케이션을 위한 언어로도 적합합니다.그렇기에 생소한 이 개념과 쓰임을 어떻게 애플은 소개하고 사용하라고 하는지 알아봅니다 😃 Explore the Swift on Server ecosystemMeet Swift on Server우선, Swift를 서버 애플리케이션에 적합하게 만드는 요소들에 대해 알아봐야 합니다. Swift를 사용하면 가비지 컬렉션 대신 자동 참조 계산을 통해 낮은 메모리 공간으로 C와 유사한 성능을 얻을 수 있어요.이는 예측 가능한 리..
-
SwiftUI - 키보드 노출 여부에 따른 뷰 오프셋 조정SwiftUI 2024. 11. 29. 00:40
안녕하세요. 그린입니다 🍏이번 포스팅에서는 키보드 노출 여부에 따라 뷰를 키보드에 가리지 않고 나타나도록 오프셋 조정하는 방법에 대해 한번 구현해볼까해요 🙋🏻 키보드 노출 여부에 따른 뷰 오프셋 조정SwiftUI로 텍스트 필드나 텍스트 뷰를 사용할때 키보드가 노출되고 뷰의 영역에서 사용성 어려움을 겪는 경우가 종종있어요 😅 예를들어 최하단에 텍스트 필드가 그려지고 있고 텍스트 필드를 포커싱 했을때, 키보드가 노출되는데, 키보드 영역이 어떠한 뷰들을 가리곤 합니다. 이를 개선하기 위해서는 키보드가 노출될때 해당 텍스트 필드 영역의 오프셋을 조정하여 키보드에 가리지 않고 뷰를 다 보이도록 해볼 수 있어요! 사실 SwiftUI는 기본적으로 키보드 회피 동작을 제공해주고 있어요.그래서 단순하게 텍스트 필..
-
ETag 캐싱으로 앱 성능 최적화하기Swift 2024. 11. 26. 18:51
안녕하세요. 그린입니다 🍏이번 포스팅에서는 ETag를 이용해 네트워크 캐싱을 하여 앱 성능을 최적화하는 방법에 대해 알아볼께요 🙋🏻 ETag 캐싱으로 앱 성능 최적화하기모바일 앱 개발에서 네트워크 최적화는 사용자 경험을 향상시키는 핵심 요소입니다. 이번 포스팅에선 HTTP 프로토콜의 강력한 기능 중 하나인 ETag(Entity Tag)에 대해 자세히 알아보고, iOS 앱에서 이를 효과적으로 구현하는 방법을 살펴보겠습니다. ETag?ETag는 웹 리소스의 특정 버전을 고유하게 식별하는 식별자에요.서버는 클라이언트에게 리소스를 응답할 때 ETag 헤더를 함께 전송하며, 클라이언트는 이후 요청 시 이 값을 사용해 리소스가 변경되었는지를 확인할 수 있습니다. 아래와 같이 예를 들어서, 서버의 응답 헤더는..
-
SwiftUI - refreshable ScrollViewSwiftUI 2024. 11. 22. 20:40
안녕하세요. 그린입니다 🍏이번 포스팅에서는 refreshable 기능을 가진 ScrollView를 만들어보려고 합니다 🙋🏻 사실, 이전 SwiftUI에서 refreshable이라는 뷰 모디파이어가 존재합니다. 관련해서 포스팅은 아래에서 정리해봤어요! SwiftUI - refreshable안녕하세요. 그린입니다🍏 이번 포스팅에서는 SwiftUI의 List에서 사용 가능한 refreshable이라는 새로 고침 기능에 대해 알아보겠습니다🙌 우선 해당 기능은 iOS 15 부터 사용이 가능해요! 참고로 WWDCgreen1229.tistory.com 요약하자면, 사실 아주 유용한 모디파이어에요.스크롤 환경에서 최상단에서 아래로 드래그 했을 시 새로고침 되는 기능을 아주 손쉽게 구현해줬으니까요..!! 그런..
-
Consume noncopyable types in Swift (feat. WWDC 2024)Swift 2024. 11. 18. 18:58
안녕하세요. 그린입니다 🍏이번 포스팅은 WWDC 2024의 Consume noncopyable types in Swift이라는 세션을 정리해보겠습니다 🙋🏻 세션 주제만 보면 Swift에서 복사할 수 없는 유형 소비하기라고 해석해볼 수 있어요 😃 그럼, Swift에서 복사가 뭐고 언제 복사 불가능한 유형을 소비해야하는지 그리고 값 소유권을 통해 의도를 명확히 어떻게 표현할 수 있는지 등을 집중적으로 다뤄보시죠 🏃🏻 Consume noncopyable types in Swift최근 Swift에서 복사할 수 없는 유형을 도입했습니다. 자세히 알아보기 전 복사란 무엇인지부터 알아보시죠! Copying 해당 플레이어라는 구조체를 가진 인스턴스가 있고 그 인스턴스를 player2에 할당하면 복사가 일어..
-
Pagination (feat. SwiftUI & MVVM)SwiftUI 2024. 11. 15. 18:56
안녕하세요. 그린입니다 🍏이번 포스팅에서는 페이지네이션 기초에 대해 구현해보려 합니다 🙋🏻근데, SwiftUI와 MVVM을 곁들인.. 거기다 Concurrency도 곁들인~ 사실 개념적으로 어려운게 전혀 아니기에 바로 들어가보겠습니다! Pagination?페이지네이션은 데이터를 여러 페이지로 나눠서 다루는 기술이죠.예를 들어, 서버와 통신을해서 게시글을 보여줘야하는 데이터가 무수히 한 만개쯤 많다고 생각해볼께요.그랬을때 이 데이터를 모두 한번에 다 가져오고 또 보여준다는건 굉장한 성능 낭비일거에요.한 화면에 스크롤을 내리거나 다음 페이지로 넘어가지 않는 이상 10개정도만 보여줄 수 있을때 남너지 9990개는 아직 보여줄수도 없는데도 들고 있어야 하니까요 🥲 그래서, 페이지네이션을 통해 데이터를 원..