반응형

iOS 197

[iOS, Swift] Missing package product [package name] 오류 해결

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. 상황) 프로젝트를 압축된 파일로 받아 풀고 나서 빌드를 하는 과정에서 이러한 에러가 발생했습니다. 해결방법) Xcode 패키징 매니저를 초기화 시킨 뒤, 패키징 매니저 업데이트를 하여 라이브러리를 업데이트하니 오류가 사라졌습니다. 패키징 매니저 초기화 및 업데이트는 방법으로는 Xcode 상에서 상단에 있는 메뉴 File - Packages - Reset Packages Caches File - Packages - Update to Latest Package version 을 실행하면 됩니다.

iOS/오류해결 2022.10.25

[iOS, Swift] validation failed: Couldn't parse property list because the input data was in an invalid format 오류 해결

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. 상황) iOS 앱에서 다국어를 지원하려고 localizable.strings 파일을 만들어 영어와 한글 지원을 하려고 했습니다.특정한 변수에 한글과 영어를 입력하고 빌드를 해봤지만, 위와 같은 에러가 발생하였습니다. 해결방법)localizable.strings 파일에서는 변수를 초기화한 뒤 항상 ; (세미콜론)을 붙여주어야 했습니다.세미콜론 빠진 부분에 세미콜론을 넣으니 해결이 되었습니다.

iOS/오류해결 2022.10.25

[iOS, Swift] 앱 내의 파일 확인하기 (FileManager)

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다 FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0] 위의 코드 위치에다 파일을 저장하게 되면 앱 내의 폴더에 이미지나 비디오가 저장이 된다. 그런데 저장만 하고 info.plist 파일에 설정을 안 해주면 아이폰에서 확인이 불가하다. info.plist 설정을 추가하자 Supports opening documents in place - YES Application supports iTunes file sharing - YES

iOS/코드조각 2022.10.24

[iOS, Swift] 화면 세로로 고정하기

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. 개발 핸드폰 설정을 화면전환이 안 되게끔 설정해놓아 개발 당시에는 몰랐었는데, 다른 핸드폰으로 사용을 해보니 화면이 전환되며 짜놓은 Layout이 아닌 다른 상태로 바뀌었다. 그리하여 아래와 같은 코드와 설정을 바꿔주어 화면전환이 안 되게끔 설정을 했다. AppDelegate.swift에서 supportedInterfaceOrientationFor 함수를 만든다. bebelucy - target - Info 화면에서 Supported Interface orientations 설정에서 Landscape 부분을 삭제한다. 위의 설정을 변경하여 iPhone은 화면전환이 안 되었지만, iPad에서는 화면전환이 안 되어서 ..

iOS/코드조각 2022.10.18

[iOS, Swift] 아이폰, 아이패드 디바이스 확인방법

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. iPhone과 iPad 코드를 구분하기 위해 아래와 같이 UIDevice Extension을 통하여 현재 빌드되는 기기가 iPhone인지 iPad인지 구분을 할 수 있다. import UIKit extension UIDevice { public var isiPhone: Bool { if UIDevice.current.userInterfaceIdiom == UIUserInterfaceIdiom.phone { return true } return false } public var isiPad: Bool { if UIDevice.current.userInterfaceIdiom == UIUserInterfaceIdiom...

iOS/코드조각 2022.10.18

[iOS, Swift] NSLayoutConstraint Multiplier 수정하기

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. NSLayoutConstraint의 multiplier 값을 변경하려고 보니 Only-get으로만 값을 받을 수 있고, 값을 설정할 수가 없었다. 그래서 구글링을 해본 결과 스택오버플로우에서 Constraint 값을 제거하고, 새로운 Constraint를 설정해줄 때 multiplier 값을 변경하여 등록해주는 코드를 발견했다. 밑의 코드를 참고하면 된다. import UIKit extension NSLayoutConstraint { func setMultiplier(multiplier: CGFloat) -> NSLayoutConstraint { NSLayoutConstraint.deactivate([self]) ..

iOS/코드조각 2022.10.18

[iOS, Swift] 파일 이름, 날짜 정보 가져오기

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. let directoryURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0] let scanFiles = try! fileManager.contentsOfDirectory(atPath: directoryURL.path) for scanFile in scanFiles { print(scanFile) } 위의 코드로 앱 내의 폴더에 저장되는 데이터를 print함수를 통해 찍어볼 수 있다. 추가적으로 저장된 날짜를 구하고 싶으면 아래의 코드를 사용하면 된다. let directoryURL = FileManager.default.ur..

iOS/코드조각 2022.10.13
반응형