본문 바로가기

UIKit9

Notifiaction Center VS Delegate Pattern 두 가지 방식의 사용법보다는 차이점에 초점을 맞춰 공부를 해보았다. (사용법은 따로 올릴 예정) Delegate ? Notification? 그게 뭔데? Delegates와 Notification 방식은 독립적인 기능을 하는 객체끼리 소통을 하기 위해 사용된다. 즉 A라는 뷰컨트롤러와 B라는 뷰컨트롤러가 있을 때, A에서 B로 알림을 보내 특정 동작을 실행하고 싶을 때 사용하는 것이다. Delegate 패턴 Delegate 패턴이란? delegate = 위임 → 한 객체가 자신의 책임을 다른 객체에게 위임 시키는 디자인 패턴 지정된 객체가 해야하는 메서드들의 원형을 프로토콜 형태로 정해놓는다. 위임을 시키는 객체에서 해당 프로토콜형식의 델리게이트 프로퍼티를 가지고 있고, 프로퍼티 내부 함수를 적절한 위치.. 2024. 2. 13.
CollectionView Cell 클릭이 안될때 대체 방법 프로젝트 도중 collectionview의 didselectItemAt 함수가 호출되지 않는 문제가 발생하였다.그래서 여러 가지 시도를 해봤는데 계속해서 되지 않아didselectItemAt 함수 대신 해 사용할 수 있는 방법을 찾아 정리해볼까 한다.시도해 봤던 방법이미지 뷰가 셀 전체를 차지하고 있어 계층 구조 시 셀이 이미지 뷰에 덮어지면서 무언가 꼬여 해당 함수가 호출이 되지 않는 건 아닐까 의심되었다.isUserInteractionEnabled 속성을 줘봄 ⇒ 실패isUserInteractionEnabled 뷰에 대한 터치, 누르기, 키보드 및 포커스 이벤트가 무시되고 이벤트 큐에서 제거됨. 기본값은 true 그렇다면 나의 가정이 잘못된 것인지 확인해보기 위해이미지에 여백을 줘 해당 여백을 클릭했.. 2024. 2. 2.
네비게이션 스택과 모달 시트에서의 뷰 컨트롤러 라이프 사이 라이프 사이클 기본 정리https://zeddios.tistory.com/43라이프 사이클의 기본적인 내용은 이 블로그를 참고해 공부했다.추가적으로 네비게이션 스택에서의 라이프 사이클 호출 방법과 모달 시트로 뷰를 연결하였을 때 라이프 사이클에 차이가 있어 정리를 해보았음뷰 컨트롤러 연결 상태 일단 뷰 컨트롤러의 모습을 살펴보면 위와 같이 1번 뷰에서 버튼을 누르면 2번 뷰, Sheet뷰로 이동할 수 있으며2번 뷰는 네비게이션을, Sheet뷰는 modal present로 연결1번 뷰를 띄웠을 때그냥 뷰 한개를 띄울 때는 예상했던 순서대로 didLoad - willAppear - DidAppear 가 호출된다.2번 뷰 네비게이션 이동1) 1번 뷰에서 2번 뷰로 이동했을 때2번 뷰의 didLoad - 1번 .. 2024. 1. 11.
[IOS] [AutoLayout] Stack View 정리 Stack View란? stack view란 오토레이아웃을 편하게 사용할 수 있도록 도와주기 위해 등장하였다. 요소를 세로(Vertical Stack View) 혹은 가로(Horizontal Stack View) 방향으로 묶어주는 역할을 한다. Stack View의 경우 콘텐츠들이 나열돼있는 방향을 토대로 수직 혹은 수평 방향을 자동적으로 적용해 준다. 따라서 수직방향으로 자동으로 스택뷰로 정렬된 모습을 볼 수 있다. 자동적으로 방향을 잡아 정렬해주지만 Axis 속성을 통해서 방향을 바꿔줄 수 있다. Stack View Property 스택뷰에는 크게 다섯가지의 속성이 있다. axis : 스택 뷰의 방향(수직, 수평)을 정의한다. (UIStackView만 해당) orientation : 스택 뷰의 방향(.. 2023. 3. 13.