반응형

전체 글 106

SwiftUI 사진 가져오기(3)

swiftUI 사진 가져오기(1) swiftUI 사진 가져오기(2) macOS macOS에서 프로젝트를 실행할 때 사용하는 소스코드이다. 앞서 말했듯이 Target을 OS에 맞게 설정하고 소스파일 제목 제일 끝에 "_(원하는 OS)"를 적으면 자동으로 인식한다. NSUIImage_macOS import AppKit import SwiftUI public typealias NSUIImage = NSImage extension NSUIImage { var data: Data? { //비트맵 이미지 데이터 return self.tiffRepresentation } static func image(fromData data: Data) -> Image { return Image(nsImage: NSImage(da..

SwiftUI 2021.03.20

SwiftUI 사진 가져오기(2)

이전 게시물 보기 MemeTextField.swift 위쪽과 아래쪽에 있는 Text컴포넌트의 UI를 꾸며주는 코드이다. import SwiftUI struct MemeTextField: View { @Binding var text: String var body: some View { TextField(text, text: $text) .multilineTextAlignment(.center) .lineLimit(nil) .foregroundColor(.black) .font(Font.system(size: 25, weight: .bold)) .textCase(.uppercase) } } @Binding 어노테이션을 사용하여 text 변수를 사용하였는데 이렇게 지정한 이유는 여러개의 뷰에서 동시에 Stat..

SwiftUI 2021.03.19

SwiftUI 사진 가져오기(1)

[참조] Document-Based Apps Using SwiftUI SwiftUI makes it easier than ever to create document-based apps that work with the iOS document interaction system. In this tutorial, you'll learn how to create a SwiftUI document-based meme-maker app. https://www.raywenderlich.com/14971928-document-based-apps-using-swiftui#toc-anchor-013 개요 xCode의 multi-platform 프로젝트를 사용해서 swiftUI를 통해 해당 디바이스의 사진에 접근해서 새로운..

SwiftUI 2021.03.17

[Swift] Protocol(1)

프로토콜이란? 프로토콜은 특정 작업이나 기능에 적합한 메서드, 프로퍼티 및 기타 요구사항을 정의해준다. 그 다음 프로토콜을 Class, Struct, Enum에서 채택하여 이런 요구사항을 실제로 구현할 수 있도록 도와준다. 프로토콜은 메서드, 프로퍼티 등을 정의만 하고, 이 프토토콜을 채택한 곳에서 구현을 한다. object-c 언어의 .h 파일과 .m 파일과 같은 느낌이다. 직접 만들수도 있고 이미 만들어져 있는 프로토콜을 채택하기도 한다. 오늘은 가장 많이 사용하는 프로토콜 들을 알아볼려고 한다. Equtable Equtable은 말 그대로 같은지 아닌지를 비교할 수 있도록 도와주는 프토토콜이다. 이 프로토콜을 채용하면 객체와 객체, 혹은 같은 구조체로 만들어진 요소들을 비교할 수 있게 된다. ==을..

macOS 2021.03.16

[Swift] UserDefaults

UserDefaults는 App 시작시 사용자의 기본 데이터베이스를 키-값 쌍으로 지속적으로 저장하는 인터페이스이다. 런타임 시 개체를 사용하여 App이 사용자의 기본 데이터베이스에서 사용하는 기본값을 읽기 때문에 값이 필요할 때마다 데이터베이스를 열 필요가 없어진다. 사용자의 정보라던가 게시물의 대한 정보처럼 대용량의 데이터를 저장할 때 사용하지 않고 자동로그인 여부, 아이디 저장, 환경설정에서 설정하는 설정 데이터 값같은 단일데이터 등을 UserDefaults로 담아서 보관한다. Available iOS 2.0+ macOS 10.0+ Mac Catalyst 3.0+ tvOS 9.0+ watchOS 2.0+ 주요 기능 기본 개체 저장 swift안에 있는 float, Int, double, Bool, U..

macOS 2021.03.15

[iOS, macOS] Alamofire Framework(3)

이전 포스트를 안보신 분들은 보시고 오는 것을 추천드립니다. [iOS, macOS] Alamofire Framework(1) [iOS, macOS] Alamofire Framework(2) Controller 마지막으로 사용자에게 기능을 제공하는 Controller만 남았는데 여기서 Alamofire을 사용하여 API와 통신을 하여 데이터를 최신화한 뒤 View에 제공해 준다. MainTableViewController Import Alamofire import Alamofire Alamofire 프레임워크를 사용하기 위해 코드 제일 앞에 Alamofire을 import 해준다. 변수 생성 var films: [Film] = [] var items: [Displayable] = [] var selecte..

macOS 2021.03.11

[iOS, macOS] Alamofire Framework(2)

프로젝트 구조 이전 포스팅에 이어서 프로젝트에 대해 분석을 하면서 Alamofire의 기능들을 공부해볼려고 한다. [이전 포스팅 바로가기] 해당 프로젝트의 디자인 패턴은 MVC구조로 되어있고 Model 부분은 Networking 폴더안에, View는 스토리보드 파일로 표현하였고, Controller 부분은 ViewController 폴더안에 있다. 우선 Model 쪽을 먼저 확인을 해야겠다. Model Networking 폴더 안에는 총 5가지의 파일이 있는데 해당 파일들을 분석해서 요약을 해보았다. ⚫ Displayable.swift : 모델 데이터를 get방식으로 view의 표시하기 위한 프로토콜 ⚫ Film.swift : 스타워즈 영화 정보에 대한 모델 데이터 ⚫ Films.swift : 영화 정보..

macOS 2021.03.10

[iOS, macOS] Alamofire Framework(1)

Alamofire란? Alamofire은 iOS와 macOS에서 사용가능한 Swift 기반 HTTP 네트워킹 프레임워크이다. Apple의 Foundation networking을 기반으로 인터페이스를 제공하여 일반적인 네트워킹 작업을 단순화한다. Alamofire의 장점은 object-C 언어가 하나도 없이 오직 swift로만 작성된 프레임워크이고 오픈소스인데 거의 완벽한 공식 문서가 있어서 사용자가 처음 사용할 때 어려움이 크게 없다. 어느정도 HTTP 네트워킹의 개념을 알고 있고 swift의 URLSession 클래스를 사용한 경험이 있다면 쉽게 다가갈 수 있는 오픈소스 프레임워크이다. 세부 기능 — Request & Response의 체이닝 함수 제공 — Combine 지원 — URL 및 JSON ..

macOS 2021.03.09

[iOS, macOS] QuickLook 프레임워크(2)

ViewController.swift ViewController에서 QuickLook 기능을 사용할려면 QuickLook관련 2가지 프로토콜을 채택해야한다. QLPreviewControllerDataSource 프로토콜과 QLPreviewControllerDelegate 프로토콜인데 extension을 통해 코드의 가시성과 유지보수에 좋게 코드를 나누어서 개발을 하였다. ViewController class ViewController: UICollectionViewController { weak var tappedCell: FileCell? let files = File.loadFiles() //collectionView의 cell의 개수 override func collectionView(_ colle..

macOS 2021.03.07

[iOS, macOS] QuickLook 프레임워크(1)

QuickLook이란? 프로젝트 내에서 이미지 파일이나 pdf 파일 등을 미리보기로 보여주고 싶은 경우가 있다. 이 때 사용하는 프레임워크인데 특정 파일들을 바로 보여주고 싶을 때 사용한다. 읽기 전용으로만 사용할 수 있으며, 쓰기는 사용할 수 없다. Apple 자체에서 제공하는 프레임워크이기 때문에 별도에 빌드없이 바로 import해서 사용할 수 있다. iOS, macOS 프로젝트 둘 다 사용할 수 있다. 제공하는 파일형식 — iWork 및 MS Office 문서 — 이미지 — 라이브 포토 — txt 파일 — PDF — 오디오 및 비디오 파일 — usdz 파일 형식을 사용하는 증강 현실 개체( iOS만 해당 ) Availability ios 4.0+ macOS 10.5+ Mac Catalyst 13.0..

macOS 2021.03.06
반응형