반응형

ios 129

[iOS, Swift] Object to Dictionary 형변환

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. extension Encodable { // object to Dictionary var toDictionary: [String: Any]? { guard let object = try? JSONEncoder().encode(self) else { return nil } guard let dictionary = try? JSONSerialization.jsonObject(with: object, options: []) as? [String: Any] else { return nil } return dictionary } } let parameter = model.toDictionary 이 글에서는 Swift에서 E..

iOS/코드조각 2023.03.24

[iOS, Swift] Any to String 형변환

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. let text: String = String(describing: sender.userInfo!["text"]!) Notification userInfo 타입이 [AnyHashable: Any]? 이어서 밸류 값 Any 타입을 형변환 해주었습니다. 위 코드에서 `sender.userInfo!["text"]!` 부분은 Notification 객체에서 userInfo 딕셔너리로부터 "text" 키에 해당하는 값을 가져오는 부분입니다. 그러나 이 값은 Any 타입으로 반환됩니다. Any 타입은 Swift의 모든 타입을 나타낼 수 있는 타입으로, 타입 안정성을 보장하지 않습니다. 따라서 이 값을 String으로 사용하려..

iOS/코드조각 2023.03.22

[iOS, Swift] UILabel Highlight 효과주기

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. label.isHighlighted = true label.highlightedTextColor = UIColor.red 위 코드는 iOS 앱에서 라벨의 하이라이트 텍스트 색상을 빨간색으로 설정하는 예시입니다. iOS 개발을 하다보면 라벨의 텍스트 색상을 변경해야 할 때가 있습니다. 예를 들어, 라벨을 탭하면 텍스트 색상이 바뀌게 하고 싶은 경우가 그렇습니다. 그럴 때, 위의 코드를 참조하여 라벨의 하이라이트 텍스트 색상을 빨간색으로 설정할 수 있습니다. 이 코드를 활용하면 원하는 색상으로 텍스트 색상을 바꿀 수 있습니다.

iOS/코드조각 2023.03.19

[iOS, Swift] RunLoop 사용하기

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. RunLoop은 iOS 애플리케이션에서 이벤트 처리를 위한 핵심 메커니즘 중 하나입니다. 이 메커니즘은 쓰레드를 대기 상태로 만들거나, 타이머를 실행하거나, 입출력 이벤트를 처리하는 데 사용됩니다. RunLoop은 앱의 UI 쓰레드를 유지하면서 동시에 다른 쓰레드에서 작업을 처리할 수 있도록 해줍니다. UI 쓰레드에서 사용자 입력을 처리하면서 백그라운드 쓰레드에서 네트워크 작업을 처리할 수 있습니다. RunLoop은 기본적으로 이벤트 루프로 구성되어 있으며, 이벤트가 발생할 때까지 대기합니다. 이벤트가 발생하면 해당 이벤트를 처리하고 다시 대기 상태로 돌아갑니다. RunLoop 클래스를 사용하여 이벤트 루프를 만들..

iOS/코드조각 2023.03.15

[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] 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
반응형