본문 바로가기

iOS/Swift3

한장으로 보는 UIViewController & UIView의 LifeCycle UIViewController & UIView의 LifeCycle(LayoutCycle)을 알아보자. 앱이든 웹이든 앞단을 개발한다면 사용자에게 쾌적한 경험을 제공해야 한다. 그러기 위해서 알아야 할 Life Cycle!!!! 어널언 UIKit의 VC, UIView의 Life Cycle에 대해 알아보자. 하루아침에 공부해서 정리할 양은 아닌 것 같아 꾸준히 업데이트 예정 💡잘못된 정보가 있으면 알려주세요! Constraint Update View의 제약 조건을 업데이트 Constraint는 실제로 View를 배치하는데는 영향을 주지 않음 특정 조건에 따라 Constraint를 갱신해서 다이나믹한 View를 구성할 수 있음 Constraint의 업데이트 순서는 View 계층 구조에서 가장 하위 View -.. 2023. 4. 27.
[Swift] Async Await와 MainActor의 관계에 대한 고찰 [Swift] Async Await와 MainActor의 관계에 대한 고찰 Swift에서 Concurrency 환경을 만들어야할 때 다양한 사용법이 있다. 특히 비동기로 데이터를 처리한 후 UI를 업데이트할 땐 MainThread에서 처리해야 한다. 여기서 MainActor를 사용함으로써 명시적으로 Main Thread로 컨텍스트 스위칭할 수 있다. 명시적으로 Main Thread에서 돌아가게 하는 방법은 여러 방법이 있는데 각각의 차이를 알아보자. 본격적으로 들어가기에 앞서, 환경부터 만들어보자. 환경 UILabel에 실제 API 호출을 통해 가져온 데이터를 바꾸도록 만들자. 우선 간단한 레이아웃 구조와 viewModel 인스턴스를 생성하자. class ViewController: UIViewContr.. 2023. 4. 26.
[Swift] 다양한 문자열 처리 방법 [Swift] 다양한 문자열 처리 방법 계속 추가 예정🤔 주어진 문자열을 특정 문자열로 변환할 때 String.replacingOccurrences(of: "I", with: "O") ["I -45", "I 653"] ----> ["O -45", "O 653"] 특정 문자열로 쪼갤 때 단, components(separatedBy: "")는 특정 문자열로 쪼갤 수 있음 ex: separatedBy: "underbarA" String.components(separatedBy: " ") return [String] or String.split(separator: " ") return [String.Subsequence] ["I -45", "I 653"] ---> [["I", "-45"], ["I", "653.. 2023. 4. 5.