이번 글에서는 저번 글에 이어 컬렉션 뷰에서 Flow Layout을 사용하는 방법에 대하여 알아보려고 한다. 해당 정보는 공식 문서를 참고했다. Apple Developer Document - Using the Flow Layout Using the Flow Layout 컬렉션 뷰에서 UICollectionViewFlowLayout 클래스의 레이아웃 객체를 사용해서 항목들을 정렬할 수 있다. Flow 레이아웃은 선 기반 레이아웃을 구현한다. 이 말은 flow 레이아웃이 셀들을 임의의 선을 그려 그 위에 배치한다고 보면 된다. 만약 임의의 선에 셀들이 다 차면 새로운 선을 그려서 계속 배치해 나간다. 위의 그림에서는 세로로 스크롤되는 flow 레이아웃의 모습을 보여준다. 여기서 각각의 선들이 가로로 그려지..
이번 글에서는 저번 글에 이어 컬렉션 뷰에서 데이터 소스와 델리게이트에 대해 알아보려고 한다. 해당 정보는 공식 문서를 참고했다. Apple Developer Document - Designing Your Data Source and Delegate Designing Your Data Source and Delegate 모든 컬렉션 뷰는 반드시 데이터 소스를 가지고 있어야 한다. 데이터 소스 객체는 앱에서 보이는 콘텐츠이며 앱 데이터 모델일 수도 있고 컬렉션 뷰를 관리하는 뷰 컨트롤러일 수도 있다. 데이터 소스를 정의할 때 반드시 필요한 것은 컬렉션 뷰의 필요한 정보를 제공할 수 있어야 한다는 것이다. 이러한 정보에는 컬렉션 뷰의 항목 수, 해당 항목을 보여주기 위한 뷰와 같은 정보가 있다. 델리게이트 ..
문제 링크 문제 흑백 영상을 압축하여 표현하는 데이터 구조로 쿼드 트리(Quad Tree)라는 방법이 있다. 흰 점을 나타내는 0과 검은 점을 나타내는 1로만 이루어진 영상(2차원 배열)에서 같은 숫자의 점들이 한 곳에 많이 몰려있으면, 쿼드 트리에서는 이를 압축하여 간단히 표현할 수 있다. 주어진 영상이 모두 0으로만 되어 있으면 압축 결과는 "0"이 되고, 모두 1로만 되어 있으면 압축 결과는 "1"이 된다. 만약 0과 1이 섞여 있으면 전체를 한 번에 나타내지를 못하고, 왼쪽 위, 오른쪽 위, 왼쪽 아래, 오른쪽 아래, 이렇게 4개의 영상으로 나누어 압축하게 되며, 이 4개의 영역을 압축한 결과를 차례대로 괄호 안에 묶어서 표현한다 위 그림에서 왼쪽의 영상은 오른쪽의 배열과 같이 숫자로 주어지며, ..
이번 글에서는 저번 글에 이어 컬렉션 뷰의 기초를 닦아보자! 해당 정보는 공식 문서를 참고했다. Apple Developer Document - Collection View Basics Collection View Basics 콘텐츠를 화면에 표시하기 위해 컬렉션 뷰는 많은 객체들과 함께 동작한다. 객체들 중 몇 개는 앱에서 반드시 제공해야 하는 것들이 있는데 컬렉션 뷰의 표시할 항목 수를 알려주는 데이터 소스 객체를 제공해야 한다. 다른 객체는 UIKit에서 제공하며 기본 컬렉션 뷰 디자인의 일부이다. 컬렉션 뷰는 테이블 뷰와 마찬가지로 데이터 기반 객체로 구현할 때 앱의 객체들과 함께 동작해야한다. 코드에서 해야 할 일을 이해하려면 컬렉션 뷰의 기능에 대한 약간의 배경지식이 필요한다. A Collec..
이번 글에서는 iOS 앱을 개발할 때 많이 사용되는 컬렉션 뷰에 대해 알아보자! 컬렉션 뷰에 대한 정보는 공식 문서를 참고했으며 링크는 아래와 같다. 컬렉션 뷰와 테이블 뷰의 차이점을 생각해보며 공부하면 좋을 것 같다. Apple Developer Documents - Collection View Programming Guide for iOS About iOS Collection View Collection View(컬렉션 뷰)는 유연하고 변경이 가능한 레이아웃을 사용하여 데이터를 보여주는 방법이다. 컬렉션 뷰로 데이터를 보여주는 가장 일반적인 방법은 격자모양으로 배열 한 뒤 보여주는 방법이지만 iOS의 컬렉션 뷰는 이렇게 단순한 행, 열 그 이상의 기능을 수행할 수 있다. 컬렉션 뷰를 사용하면 해당 클..
문제 링크 문제 아래 과 같이 여러개의 정사각형칸들로 이루어진 정사각형 모양의 종이가 주어져 있고, 각 정사각형들은 하얀색으로 칠해져 있거나 파란색으로 칠해져 있다. 주어진 종이를 일정한 규칙에 따라 잘라서 다양한 크기를 가진 정사각형 모양의 하얀색 또는 파란색 색종이를 만들려고 한다. 전체 종이의 크기가 N×N(N=2k, k는 1 이상 7 이하의 자연수) 이라면 종이를 자르는 규칙은 다음과 같다. 전체 종이가 모두 같은 색으로 칠해져 있지 않으면 가로와 세로로 중간 부분을 잘라서 의 I, II, III, IV와 같이 똑같은 크기의 네 개의 N/2 × N/2색종이로 나눈다. 나누어진 종이 I, II, III, IV 각각에 대해서도 앞에서와 마찬가지로 모두 같은 색으로 칠해져 있지 않으면 같은 방법으로 똑..
이번 글은 Apple에서 과거에 올린 글이기 때문에 Objective-C로 코드가 구성되어있는데 Swift로 구현하는 방법은 여기를 참고해주세요!. Apple Developer Document - Operation Queues Operation Queues Cocoa Operation은 비동기적으로 실행하려는 작업을 객체 지향 방식으로 캡슐화한다. 작업들은 operation queue와 함께 실행되거나 자체적으로 실행되도록 설계된다. OS X, iOS의 Cocoa 기반 프로그램들에서 일반적으로 사용되는 작업들은 Objective-C 기반이다. 이번 글에서는 Operation을 정의하고 사용하는 방법에 대해 알아보자 About Operation Object 작업 객체는 NSOperation 클래스의 인스턴..
문제 링크 1931번: 회의실배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 문제 한 개의 회의실이 있는데 이를 사용하고자 하는 N개의 회의에 대하여 회의실 사용표를 만들려고 한다. 각 회의 I에 대해 시작시간과 끝나는 시간이 주어져 있고, 각 회의가 겹치지 않게 하면서 회의실을 사용할 수 있는 회의의 최대 개수를 찾아보자. 단, 회의는 한번 시작하면 중간에 중단될 수 없으며 한 회의가 끝나는 것과 동시에 다음 회의가 시작될 수 있다. 회의의 시작시간과 끝나는 시간이 같을 수도 있다. 이 경우에는 시작하자마자 끝나는 것으로 생각하면 된다. 입력 첫째 줄에 회의의 수 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N+1 줄까지 각 회..
- Total
- Today
- Yesterday
- mac
- Apple
- design
- 프로그래밍
- OSTEP
- document
- 앱개발
- 테이블뷰
- 코딩테스트
- operator
- System
- Xcode
- 동시성
- IOS
- 문법
- pattern
- 아이폰
- DP
- OS
- 백준
- 알고리즘
- Publisher
- 자료구조
- Combine
- operating
- Swift
- BFS
- 스위프트
- dfs
- 코테
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |