본문 바로가기

iOS/SwiftUI

(4)
SwiftUI 내부 동작 원리 SwiftUI 내부 작동 원리 When SwiftUI looks at your code, what does it see? 이번시간에는 swiftUI가 우리의 코드를 볼 때 내부 동작에 대해서 한번 학습해 보겠습니다. 이를 위해서 아래의 세가지를 살펴볼 예정입니다! Identity, Lifetime, Dependencies Identity는 SwiftUI가 앱의 다양한 업데이트 시 각 element를 동일하거나 혹은 별개로 인식하는 방법입니다. Lifetime은 시간의 흐름에 따른 뷰와 데이터의 존재를 추적하는 방법입니다. Dependency는 인터페이스를 업데이트해야하는 시기와 이유를 이해하는 방법입니다. 이 개념들을 통해 SwiftUI는 변경해야 하는 사항, 방법, 시기를 결정하여 화면에 표시되는 동적..
SwiftUI Grid 오늘 알아볼것은 SwiftUI에서 Grid입니다!!! 사실 지금까지 쓸 일이 없었고, 그냥 아 저런게 있구나 이렇게만 알고 있었거든여 근데 이번에 앱스쿨 과제를 만들때 한번 써볼까?? 싶어서 정리해봤습니다!! ( 안하면 맨날 까먹어서 다시 찾아야함 ㅋㅋ ) Grid 컨테이너에 뷰를 2차원 정렬하는 레이아웃임!! LazyHGrid 수평으로 늘어나는 Grid임!! 그래서 가로로 스크롤이 가능한 뷰 컬렉션을 표현할 때 사용함!! 그래서 보통 ScrollView 랑 같이 쓰는거 같아여 사용하려면? 그리드에 포함될 열 항목의 배열을 생성해야 합니다. GridItem 을 이용해서 아이템을 생성함! let rows1 = [GridItem(.fixed(30))] // 1개의 열로 표현됨 let rows2 = [Grid..
SwiftUI 뷰의 변화 감지 오늘의 주제는 SwiftUI에서 뷰의 변화 감지를 할 수 있는 modifier에 대해 알아보겠습니다! 사실 이런 것들에 대해서 진짜 진짜 최근에 알게 되었는데 처음으로 본게 .onAppear 이거등여 근데 찾아보니까 저거랑 비슷한 역할을 하는 친구들이 몇개 더 있더라구요 아직 다 써본건 아니지만 자주 쓸거같아여 한번 정리해보려고 합니다!!~ 여기서 소개하는 친구들은 뷰의 변화를 감지하고 대응하기 위한 modifier들입니다! onChange(of:perform:) 에 대해서 알아보려고 했는데… onChange(of:perform:) | Apple Developer Documentation onChange(of:perform:) | Apple Developer Documentation Adds an act..
SwiftUi DataBinding 이 게시글 내용은 공부하면서 점차 수정해 나갈 예정입니당 2023.6.26 13:31 작성 ----------- SwiftUI → 데이터 주도 방식으로 앱 개발을 강조 publlisher와 subscriber 구축 데이터와 UI 뷰 사이 데이터 변경에 따른 처리 코드 없이 뷰가 업데이트 가능. 이를 위해 SwiftUI는 상태 프로퍼티, Observable 객체, Environment 객체를 제공 → UI의 모양과 동작을 결정하는 상태 제공 뷰와 바인딩된 상태 객체가 상태에 따라 자동으로 뷰 업데이트 상태 프로퍼티, State property 상태에 대한 가장 기본적인 형태 뷰 레이아웃의 현재 상태를 저장하기 위해 사용 토글 버튼 활성화 여부, 텍스트 필드의 텍스트, 피커 뷰의 현재 선택 … 등 간단한 데..