반응형

전체 글 234

[iOS, Swift] UILabel 여러 줄 표현하기

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. UILabel은 iOS 앱에서 많이 사용되는 UI 컴포넌트 중 하나입니다. 하지만 한 줄의 text만을 표시하기 때문에 text가 길어지면 너비가 부족해져서 표시되지 않는 경우가 있습니다. 이때 numberOfLines 속성을 사용하면 text가 여러 줄로 표현될 수 있습니다. numberOfLines 속성은 Label의 text가 차지할 수 있는 최대 줄 수를 정의하는데, 0으로 설정하면 필요한 만큼의 textLine을 표현할 수 있습니다. 더 복잡한 텍스트의 경우, UITextView를 사용하는 것이 더 적합할 수 있습니다. UITextView는 text를 수정할 수 있기 때문에, 사용자로부터 입력을 받아야 할..

iOS/코드조각 2023.03.18

[iOS, Swift] UILabel 밑줄 추가하기

iOS 15.5, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. NSAttributedString 클래스는 문자열에 다양한 스타일을 적용할 수 있는 클래스입니다. 이 클래스를 사용하면 문자열의 특정 부분에 대해 폰트, 색상, 기울임 등의 스타일을 지정할 수 있습니다. NSAttributedString의 인스턴스를 생성하려면 문자열과 스타일을 딕셔너리 형태로 전달해야 합니다. 이 때, 스타일은 NSAttributedString.Key 열거형의 값으로 전달됩니다. 이 열거형은 다양한 스타일 옵션을 제공하며, 예를 들어 폰트, 색상, 밑줄, 중앙선 등의 스타일을 지정할 수 있습니다. NSAttributedString 클래스의 Key 열거형 중에서도 NSUnderlineStyle 속성..

iOS/코드조각 2023.03.17

[디자인, 피그마] UX/UI 디자이너를 위한 실무 피그마

"한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." 컴퓨터 프로그래밍을 하면서 프론트 작업을 할 때, 디자이너가 없이 개발자만 작업하면 매우 어려울 것입니다. 또한 개발자와 디자이너 간의 소통이 없으면 작품이 나오지 않을 수 있습니다. 개발자와 디자이너가 소통하는 데 있어서 피그마나 다른 프로그램이 없으면 소통이 어려울 것이지만, 지금은 소통할 수 있는 프로그램인 피그마가 있어서 소통이 더욱 편리해졌습니다. 이 책은 피그마를 처음 시작하거나 배우는 학생들이 쉽게 접할 수 있도록 작성되었습니다. 또한 피그마를 사용하는 디자이너, 기획자, 개발자들을 위해 작성되었으며, 피그마에서 리소스 사용법을 알려주고, 협업하는 방법도 설명합니다. 마지막으로, 실제 앱을 바탕으로 예제를 설명하므로 피그마를 쉽게..

2023.03.16

[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] 코드로 뷰 작성하기(UIKit, Constraint)

iOS 15, Xcode 13.31, Swift 5, UIKit 환경에서 진행했습니다. 이번 글에서는 Swift 코드로 뷰를 작성하는 방법에 대해 알아보겠습니다. 뷰를 코드로 작성하면 Interface Builder를 사용하는 것보다 더 세밀한 제어가 가능합니다. 그리고 Constraints를 활용하여 뷰를 자동으로 정렬하는 방법도 함께 알아보겠습니다. 1. 뷰 작성하기 Swift 코드로 뷰를 작성하는 방법은 매우 간단합니다. 먼저, UIView 클래스를 상속받은 새로운 클래스를 만듭니다. 그리고 그 클래스 내부에서 필요한 뷰들을 생성하고, addSubview() 메소드를 사용하여 부모 뷰에 추가합니다. class MyView: UIView { let titleLabel = UILabel() let de..

iOS/코드조각 2023.03.14

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