๋ชฉ๋ก๐ฑ๐ iOS (62)
Bibi's DevLog ๐ค๐
[Swift] ์ฝ๋๋ก AutoLayout ์ค์ ํ๊ธฐ (Constraint) https://macgongmon.club/31 ์ฐธ๊ณ ํ๊ธฐ : Apple ๊ณต์ ๋ฌธ์: Understanding Auto Layout AutoLayout์ด๋ : ๋ทฐ ๊ณ์ธต ๋ด์์ ๋ทฐ๋ค์ ํฌ๊ธฐ์ ์์น๋ฅผ ๊ฐ ๋ทฐ๋ค์ ์ ์ฝ์ฌํญ(constraint)์ ๊ธฐ๋ฐ์ผ๋ก ๋์ ์ผ๋ก ๊ณ์ฐํ๋ ๊ฒ. ์ฌ๋ฌ ํด์๋๋ฅผ ์ ์ฐํ๊ฒ ์ง์ํ ์ ์๋ค๋ ์ฅ์ ์ด ์๋ค. AutoLayout vs Frame-Based Layout Frame-Based Layout ์ ์๋ ์ขํ(origin - X, Y)์ ์ฌ์ด์ฆ(size - width, height)์ ๋ฐ๋ผ ๋ทฐ๊ฐ ๊ทธ๋ ค์ง๋ค. AutoLayout ์ ์๋ ์ ์ฝ์ฌํญ(constraint)์ ๋ฐ๋ผ ๋ทฐ๊ฐ ๊ทธ๋ ค์ง๋ค. constraint = ์ง๊ธ ..
Container View Controller ์ปจํ ์ด๋ ๋ทฐ ์ปจํธ๋กค๋ฌ https://woozzang.tistory.com/145 ViewController์ ๋ ์ข ๋ฅ Content View Controller ์ปจํ ์ธ ๋ทฐ ์ปจํธ๋กค๋ฌ ์ผ๋ฐ์ ์ธ ๋ทฐ ์ปจํธ๋กค๋ฌ. ์ฑ ๋ด ๋ฐ์ดํฐ๋ฅผ ํ๋ฉด์ ๋ณด์ฌ์ฃผ๋ ๋ฑ์ ์ญํ UIViewController๋ฅผ ์ง์ ์๋ธํด๋์ฑํด ์ปค์คํ ํด ์ฌ์ฉ Container View Controller ์ปจํ ์ด๋ ๋ทฐ ์ปจํธ๋กค๋ฌ ์ฌ๋ฌ ์์๋ฅผ ์กฐํฉํ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌ์ฑ ๋ณดํต ๋ฌด์ธ๊ฐ๋ฅผ ์ง์ ๋ณด์ฌ์ฃผ๋ ์ญํ ์ด ์๋๋ผ, ๋ทฐ ์ปจํธ๋กค๋ฌ ๊ฐ์ ๋ถ๋ชจ-์์ ๊ด๊ณ๋ฅผ ํ์ฑํ์ฌ ๊ณ ์ ์ ๋ฐฉ์์ผ๋ก ์์์ ๊ด๋ฆฌํ๋ ์ญํ ์ ๋ทฐ ์ปจํธ๋กค๋ฌ. ์์ ๋ทฐ ์ปจํธ๋กค๋ฌ๋ค์ ์ฐธ์กฐ๋ฅผ ๊ฐ์ง๊ณ ๊ด๋ฆฌํ๋ค. ์ฆ Container View Controller๊ฐ Cont..
[iOS] main thread, global thread ๋ฉ์ธ ์ค๋ ๋(์ธํฐํ์ด์ค ์ค๋ ๋), ๊ธ๋ก๋ฒ ์ค๋ ๋(๋ฐฑ๊ทธ๋ผ์ด๋ ์ค๋ ๋) https://babbab2.tistory.com/65?category=831129 Main Thread ๋ฉ์ธ ์ค๋ ๋ (Interface Thread ์ธํฐํ์ด์ค ์ค๋ ๋) iOS ์์ ๋ฉ์ธ ์ค๋ ๋๋ ์ค์ง ํ ๊ฐ๋ง ์กด์ฌํจ ๋ฉ์ธ ์ค๋ ๋๋ ์ธํฐํ์ด์ค ์ค๋ ๋๋ผ๊ณ ๋ ํจ : UI์ ๊ด๋ จ๋ ์์ ์ ๋ฐ๋์ ๋ฉ์ธ ์ค๋ ๋์์ ์์ฑํด์ผ ํ๊ธฐ ๋๋ฌธ. ๋ฉ์ธ ์ค๋ ๋๋ Main Queue ์์ ์คํ๋๋๋ฐ, Main Queue ๋ Serial Queue ์ด๊ธฐ ๋๋ฌธ์, ํ ๋ฒ์ ํ๋์ ์์ ๋ง ์คํํจ. ๋ฐ๋ผ์ UI์ ์ํฅ์ ์ค ๋งํ ์ฝ๋๋ค์ ๋ฉ์ธ ์ค๋ ๋๊ฐ ์๋ ์๋์ Global Thread ๋ก ์คํํด์ผ ํจ. G..
[iOS] NSOperation ๊ณผ GCD(Grand Central Dispatch), DispatchQueue https://babbab2.tistory.com/65?category=831129 iOS ์์ ์ ๊ณตํ๋ ๋ฉํฐ์ค๋ ๋ฉ์ ์ํ API์๋ ์ธ ์ข ๋ฅ๊ฐ ์๋ค. NSOperation (OperationQueue) NSThread (Thread) GCD (Grand Central Dispatch) - (DispatchQueue) NSOperation (NSOperationQueue) Objective-C ๊ธฐ๋ฐ์ ๊ณ ์์ค API ๋ด๋ถ์ ์ผ๋ก C ๋ก ๊ตฌํ๋ GCD ๋ฅผ ๊ณ ์์ค ์ธ์ด๋ก ๋ํํ ๊ฒ. ์ฅ์ ) GCD ์ ์๋ ๊ธฐ๋ฅ๋ค์ ์ฌ์ฉํ ์ ์์ ์์ ์ทจ์, ์์ ์ฌ์ฌ์ฉ, KVO ๋ฑ ๋จ์ ) GCD ๋ณด๋ค ๋ฌด๊ฒ๊ณ , ์ค๋ฒ..
[iOS, Swift] UITapGestureRecognizer ํญ ์ ์ค์ฒ ์ธ์๊ธฐ https://cocoacasts.com/swift-fundamentals-working-with-tap-gesture-recognizers-in-swift UITapGestureRecognizer ํด๋์ค๋ฅผ ์ด์ฉํด ํญ ์ ์ค์ฒ๋ฅผ ์ฌ์ฉํ๋ ๋ฒ. import UIKit class ViewController: UIViewController { // MARK: - Properties @IBOutlet private var tappableView: UIView! { didSet { tappableView.backgroundColor = .red } } // MARK: - View Life Cycle override func viewD..
PhotoKit ๊ทธ๋ฆฌ๊ณ Photos์ ํด๋์ค๋ค https://zeddios.tistory.com/614 ๊ณผ ๊ทธ ์๋ฆฌ์ฆ๋ค Assets, Collections of Assets, List of Collections ๊ณตํต์ : read-only, immutable, ๋ฉํ๋ฐ์ดํฐ๋ง ํฌํจ Assets : ์ฌ์ง, ๋น๋์ค, ๋ผ์ด๋ธ ํฌํ Collections of Assets : ์จ๋ฒ ๋๋ Moments List of Collections : ์จ๋ฒ ํด๋ ๋๋ Moment ํด๋ฌ์คํฐ PhotoKit : Photos ํ๋ ์์ํฌ์ PhotosUI ํ๋ ์์ํฌ๋ฅผ ๊ฐ์ง๊ณ ์๋ ํ๋ ์์ํฌ. ์ฌ์ง ์ฑ์์ ์ฌ์ฉ์์๊ฒ ํ์๋๋ ๊ฐ์ฒด๋ฅผ ๋ชจ๋ธ๋งํ๋ ์ํฐํฐ ๊ทธ๋ํ๋ฅผ ์ ์ํ๋ค - lightweight, immutable ์ฌ์ง ์ฑ์ ์ฌ์ง๋ค, ๋น๋์ค..