WooKoo Blog

물과 같이

전체 글 124

[iOS] - PHAsset 이미지 파일명과 파일 크기 가져오기

먼저 PHAsset이 준비되어있다는 가정하에 사용하면 될 것 같다. developer.apple.com/documentation/photokit/phassetresource/1623988-assetresources Apple Developer Documentation developer.apple.com let asset = self.assets.object(at: indexPath.row) var byte = "" let resources = PHAssetResource.assetResources(for: asset) let filename = resources.first!.originalFilename //MB로 변환 var sizeOnDisk: Int64 = 0 if let resource = res..

개발/개발 2020.09.23

[SwiftUI] - Opaque Type

Opaque Type 이라고 들어보셨나요? SwiftUI 를 접하게 되면서 저도 알게되었는데 궁금해서 한번 정리해보았습니다. 틀린 부분 있으면 댓글 부탁드립니다! Opaque Type 오파큐 타입??? 오패큐 타입? 이게 뭐지??? 한국 말로는 불투명한 타입이다. 불투명 결과 타입(Opaque Result Types) 또는 불투명 반환 타입(Opaque Return Type)이라고한다. 나 : "그래서 불투명한 타입이 뭔데?" SwiftUI의 body 프로퍼티를 보면 var body: some View { ... } 여기서 some이 불투명 타입 키워드라고한다. (프로퍼티, 첨자, 함수 등 반환타입에 한정적으로 사용됌) 타입 정보 은닉 body에 some을 빼게되면 두곳에서 오류가 발생한다. 1. 연관 ..

개발/개발 2020.09.21

[SwiftUI] - 기본 뷰 구성하기 - 2단계

해당 화면을 그리기 위해서 모델을 구성하고 데이터들을 불러왔다. 모델 구성 struct Product{ let name: String let imageName: String let price: Int let description: String var isFavorite: Bool = false } let productSamples = [ Product(name: "나는야 무화과", imageName: "fig", price: 3100, description: "소화가 잘되고 변비에 좋은 달달한 국내산 무화과에요. 고기와 찰떡궁합!"), Product(name: "유기농 아보카도", imageName: "avocado", price: 2900, description: "미네랄도 풍부하고, 요리 장식과 소스..

개발/개발 2020.09.21

iOS - Architectures [국산 앨런님]

k-elon.tistory.com/37 [iOS] Architectures (MV*, VIPER, ReactorKit, RIBs) 왜 아키텍쳐를 고려해야만 할까? 아키텍쳐를 고려하지 않는 다면 매우 비대해진 클래스를 마주하게 됩니다. 그리고 이를 디버깅하는 동료 뿐만 아니라 본인 조차 이해하고 수정하는 데 너무나�� k-elon.tistory.com 저도 여러번 포스팅하고 공부했지만 아키텍쳐라는 것은 사용하는 사람마다 이해하는 사람마다 전부 다르고해서 계속 안쓰면 까먹는 부분이다. 평소 MVC, MVVM만 알고 있었다면 다른 아키텍쳐도 국산앨런님 포스팅을 통해서 배워두면 좋을 것 같다. 저는 아키텍쳐를 어떻게 설계하는지에 대한 방법이라고 생각하고 있어요. 정리와 분배를 잘해야 협업에도 좋고 코드 짜기도 ..

개발/개발 2020.09.21

[SwiftUI] - Hex Color Extention

extension Color{ init(hex: String){ let scanner = Scanner(string: hex) //문자 파서역할을 하는 클래스 _ = scanner.scanString("#") //scanString은 iOS13 부터 지원 #문자 제거 var rgb: UInt64 = 0 //문자열을 Int64 타입으로 변환해 rgb 변수에 저장. 변환 할 수 없다면 0 반환 scanner.scanHexInt64(&rgb) let r = Double((rgb >> 16) & 0xFF) / 255.0 //좌측 문자열 2개 추출 let g = Double((rgb >> 8) & 0xFF) / 255.0 // 중간 문자열 2개 추출 let b = Double((rgb >> 0) & 0xFF) /..

개발/개발 2020.09.21

[SwiftUI] - 기본 뷰 구성하기 및 ProductRow 추출

해당하는 화면을 만드는 소스이다. struct ProductRow: View { var body: some View { HStack{ //상품 이미지 Image("apple") .resizable() .scaledToFill() .frame(width: 140) .clipped() VStack(alignment: .leading){ //상품명 Text("백설공주 사과") .font(.headline) .fontWeight(.medium) .padding(.bottom, 6) //상품 설명 Text("달콤한 맛이 좋은 과일이 여왕 사과. 독은 없고 꿀만 가득한 가득해요!") .font(.footnote) .foregroundColor(.secondary) Spacer() HStack(spacing: 0){..

개발/개발 2020.09.20

URL과 URI의 차이 [상어님]

오늘도 상어님 블로그를 탐방하려고해요. 글을 재미있게 쓰시기도하고 기초적인 내용들이 많아서 좋은 것 같아요 shark-sea.kr/entry/iOS-URI%EC%99%80-URL-%EC%B0%A8%EC%9D%B4-URI-VS-URL iOS :: URI와 URL 차이 (URI VS URL) 안녕하세요! 상어입니다. 날씨가 너무 더워져서 녹아버릴 것 같아욯ㅎㅎㅎ ㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎ 그래두 겨울시러ㅠㅠ 오늘 다룰 내용은 URI와 URL의 차이입니다. URL은 많이 들어봤는데 URI�� shark-sea.kr URL -> Uniform Resource Locator 인터넷 상의 자원 위치 URI -> Uniform Resource Identifier 인터넷에 있는 유일한 주소 https://www.abcd...

개발/개발 2020.09.20

iOS - Tab Bar [국산 앨런님]

최근 탭바를 사용하며 프로젝트를 하는 경험이 있어서 이 게시글이 눈에 들어왔다. k-elon.tistory.com/29 [iOS] Tab Bar 톺아보기 요즘 앱들을 보면 iOS 뿐만 아니라 AOS 까지 거의 다 하단에 탭이 있는 Tabbar로 페이지를 구분하는 형태가 많습니다. 폰이 길어져서 그런다~ 사용자 UX가 좋다 등 결국 사용자가 편하다 라는 이유로 k-elon.tistory.com 제가 탭바를 사용 했을 때는 동일한 뷰에 다른 데이터를 tag를 이용해 구분해내는 방식으로 사용했었는데 탭바아이템별로 새로운 뷰로 이동시켜서 사용하는 것을 설명해주시고 계시는군요 릴레이션 세규로 새로운 뷰 컨트롤러에 연결해주고 사용하면 끝!

개발/개발 2020.09.18

iOS - TabBar 동일 컨트롤러 사용하기

앱 델리게이트에서 다음과 같이 태그를 설정해준다. var window: UIWindow? func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. if let tapBarController = window?.rootViewController as? UITabBarController{ let storyboard = UIStoryboard(name: "Main", bundle: .main) let vc =..

개발/개발 2020.09.18

iOS - SQLite와 Realm 장단점[상어님]1일 1블로그 탐방

내부 DB를 사용할 때 SQLite를 사용했었는데 Realm이 또 좋다는 이야기를 많이 들었어요. 상어님 블로그에 이런 장단점 비교글이 있길래 한번 구경왔습니다. shark-sea.kr/entry/iOS-SQLite%EC%99%80-Realm-%EC%9E%A5%EB%8B%A8%EC%A0%90 iOS :: SQLite와 Realm 장단점 안녕하세요! 상어입니다. 진짜 오랜만에 블로그를 하는 것 같네요.. 하하핳 네.....ㅠㅠ 앞으로는 가벼운 글로도 많이 올게용!! 그리하여 첫 가벼운? 글은 SQLite와 Realm 장단점이에용XD 제가 내부DB � shark-sea.kr SQLite 장점: 쉽고 간편 , iOS에 내장 단점: 성능이 그럭저럭, Date Time 같은 필드가 존재하지않음 write의 경우 ..

개발/개발 2020.09.16