일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래머스
- Swift공부
- iOS개발
- 파이썬
- Clean Architecture
- 오토레이아웃
- UIKit
- 안드로이드 공부
- 앱개발
- 알고리즘
- Kotlin
- 알고리즘 공부
- 백준온라인저지
- swift
- 공부
- 정렬
- 백준 온라인 저지
- Til
- ios
- dfs
- Algorithm
- error
- SwiftUI
- 파이썬 풀이
- 그리디 알고리즘
- BFS
- Autolayout
- Android
- greedy algorithm
- Python
- Today
- Total
목록ios (41)
Tori의 개발 공부

결론적으로 클로저에서 weak self를 사용하지 않아도 되는 경우는 다음과 같은 두 가지가 있다. 1. non-escaping 클로저인 경우 2. DispatchQueue.main.asyncAfter 함수를 사용할 경우 escaping 클로저와 non-escaping 클로저 함수 파라미터로 전달된 클로저를 함수 실행이 종료된 후 실행되는 것을 함수를 탈출(escape)한다고 한다. 즉 escaping클로저는 파라미터로 전달된 클로저가 탈출하여 함수 종료 후에 실행되는 클로저를 의미한다. escaping non-escaping 실행 시점 함수 종료 후 함수 내에서 코드 호출 즉시 외부 저장 여부 가능 불가능 두 함수의 차이는 외부 저장 여부에 대해서도 다르다. non - escaping 클로저는 함수 외..
프로젝트 도중 collectionview의 didselectItemAt 함수가 호출되지 않는 문제가 발생하였다.그래서 여러 가지 시도를 해봤는데 계속해서 되지 않아didselectItemAt 함수 대신 해 사용할 수 있는 방법을 찾아 정리해볼까 한다.시도해 봤던 방법이미지 뷰가 셀 전체를 차지하고 있어 계층 구조 시 셀이 이미지 뷰에 덮어지면서 무언가 꼬여 해당 함수가 호출이 되지 않는 건 아닐까 의심되었다.isUserInteractionEnabled 속성을 줘봄 ⇒ 실패isUserInteractionEnabled 뷰에 대한 터치, 누르기, 키보드 및 포커스 이벤트가 무시되고 이벤트 큐에서 제거됨. 기본값은 true 그렇다면 나의 가정이 잘못된 것인지 확인해보기 위해이미지에 여백을 줘 해당 여백을 클릭했..

메모리 공간 구조 알아보기 프로그램을 실행하게 되면 운영체제는 메모리에 프로그램을 위한 공간을 할당함 할당된 메모리 공간은 아래와 같이 코드영역, 데이터 영역, 힙 영역, 스택 영역으로 나누어져 있음 그림에 써져 있는 설명처럼 코드 영역: 실행한 프로그램의 코드를 기계어로 변환하여 저장하고 있음 (컴파일 타임 시 결정) 데이터 영역: 전역변수, static 변수 저장 (시작과 동시에 할당, 프로그램이 종료되어야 메모리 해제) 힙 영역 : 프로그래머가 동적으로 할당/해제하는 메모리 영역 (런타임 시 결정) 스택 영역: 지역 변수, 매개 변수 등이 저장되고 해당 변수를 사용하는 함수 종료 시 메모리 해제됨 (컴파일 타임 시 결정) ARC란? ARC란? Automatic Reference Counting의 약..

라이프 사이클 기본 정리https://zeddios.tistory.com/43라이프 사이클의 기본적인 내용은 이 블로그를 참고해 공부했다.추가적으로 네비게이션 스택에서의 라이프 사이클 호출 방법과 모달 시트로 뷰를 연결하였을 때 라이프 사이클에 차이가 있어 정리를 해보았음뷰 컨트롤러 연결 상태 일단 뷰 컨트롤러의 모습을 살펴보면 위와 같이 1번 뷰에서 버튼을 누르면 2번 뷰, Sheet뷰로 이동할 수 있으며2번 뷰는 네비게이션을, Sheet뷰는 modal present로 연결1번 뷰를 띄웠을 때그냥 뷰 한개를 띄울 때는 예상했던 순서대로 didLoad - willAppear - DidAppear 가 호출된다.2번 뷰 네비게이션 이동1) 1번 뷰에서 2번 뷰로 이동했을 때2번 뷰의 didLoad - 1번 ..