
iOS에서는 FileManager를 통해 쉽게 이미지, 동영상, JSON 등의 다양한 파일 데이터를 로컬에 저장하고, 공유하고, 삭제할 수 있죠. 오늘은 그렇게 저장된 로컬 데이터를 Xcode에서 .xcappdata 확장자 파일로 받아서 쉽게 확인하고, 테스트, 관리하는 방법을 빠르게 알아봅니다. 일단, 기존에 제가 포스팅했던 FileManager를 통한 비디오 데이터 저장 및 공유 포스팅을 참고해주세요(바로 아래 링크 참고). 테스트용 데이터를 저장하고 확인하면 더 와닿으실 겁니다! iOS FileManager를 활용하여 URL로부터 비디오 데이터 저장 후, 공유하는 방법 ▼ iOS FileManager, Video URL Data 파일 저장 및 공유 방법 앱을 개발하다보면, 특정 URL로부터 Data..

앱을 개발하다보면, 특정 URL로부터 Data를 얻고 그 데이터를 저장하고, 공유하는 기능을 구현해보고 싶을때가 있을거에요. 오늘은 URL, Data, FileManager등을 사용해서 그 과정을 실제로 구현해보도록 하겠습니다. 파일 공유에 사용되는 ActivityViewController SwiftUI로 사용할 수 있도록 구현하기 UIActivityViewController는 UIKit에서 파일 공유창으로서 사용되는 UIView인데요. 이를 UIViewControllerRepresentable을 채택해서 래핑하면, SwiftUI View에서 사용이 가능해집니다. 69 ~ 70행) activityItems에 공유하고자하는 파일의 URL을 넘겨서 공유를 할 수 있고, applicatioinActivitie..

iOS개발에 사용되는 swift는 class의 경우 상속이 가능합니다. 하지만 상속은 단일상속이 가능하지요. 그리고 struct의 경우, 이러한 상속이 불가능하죠. protocol은 class와 달리 다수의 프로토콜을 함께 채택하며 사용이 가능합니다. 또한 struct도 protocol을 채택할 수 있지요. 이렇게 다양한 프로토콜을 준수하도록 할 수 있는 개념을 protocol composition, 프로토콜 조합 이라고 한다고 합니다. 오늘은 protocol composition(프로토콜 조합) 개념을 사용하는 예시를 코드를 보며 몇가지 알아보도록 하겠습니다. Protocol Composition(프로토콜 조합) 개념 코드로 알아보기 먼저, Lecture라는 구조체를 하나 정의했습니다. struct 는..

오늘은 Udemy강의에서 다뤘던 내용을 복습하는 차원에서 swift의 Protocol에 associatedtype을 지정하고 활용하는 방법과 associatedtype에 대한 제약을 주는 방법도 알아보겠습니다. 참고한 강의 reference는 아래 링크를 참고해주세요. https://www.udemy.com/course/swift-for-intermediate-and-advanced-ios-developers/ swift protocol, associatedtype 연관타입 정의 및 사용방법 Parser라는 protocol이 정의되어있습니다. 그리고 그 내부를 보시면 Input, Output 타입이 associatedtype으로 지정되어있습니다. 그리고 Input, Output을 사용하는 parse 라는..
- Total
- Today
- Yesterday
- swift reduce
- swift
- Swift 알고리즘
- createML
- SwiftUI
- CoreML
- 프로그래머스
- 프로토콜
- swift언어
- 백준swift
- swift문제
- swift 기초
- uikit
- 스위프트
- 백준알고리즘
- 김프매매
- 부스트코스
- 프로그래머스swift
- Collection
- 개발자문서
- publisher
- swift 문자열
- swift string
- 컬렉션
- swift알고리즘
- 알고리즘문제
- 자연어처리
- 알고리즘
- Protocol
- ios
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |