반응형

전체 글 229

[iOS, Swift] Swift 문법 sorted 예제

iOS 16.1, Xcode 14.2, Swift 5, UIKit 환경에서 진행했습니다. Swift는 iOS와 macOS를 위한 프로그래밍 언어로, C와 Objective-C에 기반을 둔 Apple의 공식 언어입니다. Swift는 안전하고 빠르며 현대적인 프로그래밍 패러다임을 따르는 강력한 언어입니다. Swift에서는 Sorted라는 중요한 기능이 있습니다. Sorted는 배열을 정렬하는 데 사용되며, 이 글에서는 Sorted의 기능과 사용 방법을 자세히 설명하겠습니다. Swift에서 Sorted 함수는 배열을 정렬하는 데 사용됩니다. Sorted 함수는 기본 정렬 기준으로 배열을 정렬합니다. 배열의 요소가 기본 정렬 기준을 따르지 않는 경우, 사용자 정의 비교 연산자를 제공하여 Sorted 함수로 전달..

iOS/문법 2023.03.12

[iOS, Swift] 네비게이션바 아이템 숨기기

Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. iOS 앱 개발에서 네비게이션 바는 화면 상단에 위치하며, 화면 이동과 앱 기능 사용에 매우 중요한 UI 요소입니다. 네비게이션 바는 타이틀, 왼쪽 버튼, 오른쪽 버튼 등 다양한 UI 요소를 포함할 수 있습니다. 이 글에서는 Swift를 사용하여 iOS 앱에서 네비게이션 바 아이템을 숨기는 방법을 알아보겠습니다. // 네비게이션 바 이미지 숨기기 self.navigationItem.titleView?.isHidden = true // 첫번째 네비게이션 바 아이템 이미지 숨기기 self.navigationItem.rightBarButtonItems![0].customView?.isHidden = true // 두번째 네비게이션 바 아..

iOS/코드조각 2023.03.11

[iOS, Swift] TableView에 모든 셀 가져오기

iOS 16.1, Xcode 14.2, Swift 5, UIKit 환경에서 진행했습니다. TableView에서 모든 셀을 가져오는 가장 간단한 방법은 TableView의 visibleCells 속성을 사용하는 것입니다. 이 속성은 현재 TableView에 표시되는 모든 셀의 배열을 반환합니다. let cells: [UITableViewCell] = tableView.visibleCells 위와 같이 cell을 가져올 수는 있지만, 보통 UITableViewCell을 상속받는 셀을 사용합니다. 그래서 CustomTableViewCell 타입으로 받으려면 형변환을 해주어야합니다. 아래와 같이 compactMap 함수를 사용하여 커스텀 타입으로 형변환할 수 있습니다. let customCells = table..

iOS/코드조각 2023.03.10

[iOS, Swift] CollectionView, Compositional Layout 기본 예제

iOS 16.1, Xcode 14.2, Swift 5, UIKit 환경에서 진행했습니다. UICollectionViewCompositionalLayout은 iOS 13에서 추가된 새로운 레이아웃 클래스입니다. 이 레이아웃 클래스를 사용하면 CollectionView의 레이아웃을 더욱 유연하게 구성할 수 있습니다. Compositional Layout을 사용하려면, 먼저 UICollectionViewCompositionalLayout 객체를 만들어야합니다. 이 객체는 섹션에 대한 정보를 받아와서, 해당 섹션에 대한 레이아웃을 구성하는 역할을 합니다. 이 객체를 만들 때는, UICollectionViewCompositionalLayoutConfiguration 객체를 사용하여 몇 가지 옵션을 설정할 수 있습..

iOS/코드조각 2023.03.09

[iOS, Swift] CollectionView 예제코드(Storyboard 활용)

iOS 16.1, Xcode 14.2, Swift 5, UIKit 환경에서 진행했습니다. CollectionView는 iOS 애플리케이션에서 리스트 형태의 컨텐츠를 보여주기 위한 UI 컴포넌트입니다. 예를 들어, 앨범 커버, 뉴스피드 등에서 사용됩니다. CollectionView는 UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout 프로토콜을 이용하여 컨텐츠를 관리하고, UICollectionViewFlowLayout을 이용하여 레이아웃을 구성합니다. iOS 앱에서는 이미지 갤러리, 피드, 타임라인, 카탈로그 등에서 CollectionView를 사용합니다. 1. Storyboard에서 Collect..

iOS/코드조각 2023.03.08

[iOS, Swift] NSAttributedString 개념과 기본 예제

iOS 16.1, Xcode 14.2, Swift 5, UIKit 환경에서 진행했습니다. 문자열에 대한 다양한 서식을 지정할 수 있는 클래스 NSAttributedString은 문자열의 특정 부분에 대한 서식을 지정할 수 있게 해주는 클래스입니다. 이 클래스를 사용하면 텍스트에 색상, 폰트, 스타일 등 다양한 서식을 적용할 수 있습니다. Swift에서는 NSAttributedString을 다루는데 있어서 더욱 강력한 기능을 제공하는 NSAttributedString을 사용할 수 있습니다. 이 클래스를 이용하면 더욱 다양한 속성을 지정할 수 있습니다. 아래는 Swift AttributedString을 사용한 예시 코드입니다. let attributedString = NSMutableAttributedStr..

iOS/iOS 2023.03.07

[iOS, Swift] Data 용량 크기 구하기

iOS 16.1, Xcode 14.2, Swift 5, UIKit 환경에서 진행했습니다. Swift Data의 Count를 사용하여 파일의 용량 정보를 알 수 있습니다. 파일의 용량 정보는 해당 파일이 차지하는 데이터의 크기를 나타냅니다. 이 정보는 파일을 저장하거나 전송할 때 유용하게 사용될 수 있습니다. Swift Data의 Count는 데이터의 크기를 바이트 단위로 반환합니다. 이를 활용하여 파일의 용량 정보를 확인할 수 있습니다. 아래는 Swift 코드 예시입니다. import Foundation let fileURL = URL(fileURLWithPath: "파일 경로") let fileData = try Data(contentsOf: fileURL) let fileSize = fileData...

iOS/코드조각 2023.03.06

[iOS, Swift] DocumentPicker로 선택한 파일 저장하기

iOS 16.1, Xcode 14.2, Swift 5, UIKit 환경에서 진행했습니다. DocumentPicker에 관한 기본적인 예제 참고 사이트 https://bksesame.tistory.com/207 [iOS, Swift] DocumentPicker 사용예제 iOS 16.1, Xcode 14.2, Swift 5, UIKit 환경에서 진행했습니다. DocumentPickerController에서 forOpeningContentTypes의 타입을 설정하고 초기화를 한 후 present로 pickerController를 띄어준다.설정된 타입은 png로 하였는데, bksesame.tistory.com DocumentPicker에서 파일을 선택할 시에 파일을 내 앱으로 저장하는 방법에 대하여 포스팅하겠습..

iOS/코드조각 2023.03.05

[iOS, Swift] 앱 내에 폴더 만들고 파일 저장하기(FileManager)

iOS 16.1, Xcode 14.2, Swift 5, UIKit 환경에서 진행했습니다. 폴더 생성 코드 let documentURL = FileManager.urls(for: .documentDirectory, in: .userDomainMask).first! let directoryURL = documentURL.appendPathComponent("folder") do { try fileManager.createDirectory(atPath: directoryURL.path, withIntermediateDirectories: false, attributes: nil) } catch let e as NSError { print(e.localizedDescription) } 파일 삭제 코드 let f..

iOS/코드조각 2023.03.04

[iOS, Swift] hugging priorty 및 CompressionResistancePriority 수정(programmatic)

iOS 16.1, Xcode 14.2, Swift 5, UIKit 환경에서 진행했습니다. Priority를 수정할 때에 Storyboard에서는 hugging priority와 compressionResistancePriority를 수정하기 쉬웠습니다. 코드로 뷰를 짠 후에 뷰의 priority를 수정하는 방법으로는 setContentHuggingPriority와 setContentCompressionResistancePriority 함수를 활용하면 됩니다. 코드예시 view.setContentCompressionResistancePriority(.defaultLow, for: .horizontal) view.setContentHuggingPriority(.defaultLow, for: .horizont..

iOS/코드조각 2023.03.03
반응형