본문 바로가기

분류 전체보기44

나의 첫 캠핑 이야기 시작은아마 돈에서 출발했을 것이다. 나의 짝꿍은 내가 골라오는 숙소를 굉장히 불편해했다.어디서 이렇게 비싼 거만 보냐고. 그렇다고 해서 다 간 것도 아니고 할인도 많이 받아서 다녀왔는데 😒그러더니 이제부터 우리는 캠핑을 다닐 거라고 했다. 한 달에 한 번은 가자며 거의 뭐 내 인생 계획 다 세워놨다.  짝꿍도 나도 캠핑 경험 전무하니 캠핑 다니는 친구를 따라다니며 많이 배워오라고 시켰다.한 네 번 정도 다녀왔나? 이것저것 사서 실어오더니 나를 납치했다. 가평으로. 근데 어쩜 이렇게 날을 잘 잡으시는지 ^^... 나는 마법에 걸렸고 하늘에서는 비가 주룩주룩.분명 비 많이 오면 안 하기로 했는데^^....  화 안 내려고 이 악물고 참으면서 텐트 피칭했다.      사이트도 잘 골라서 남의 텐트 뒤에 있었.. 2024. 5. 13.
웨딩 플라워 스쿨 2편 강남까지는 배차가 극악 무도한 빨간 버스를 타고 다니므로 늦지 않으려고 항상 일찍 나왔다. 이 날은 유독 시간이 많이 남아 양재시민의 숲을 지날 무렵 나도 모르게 하차 벨을 눌러버렸다.날이 흐리긴 했지만 양재천을 따라 흐드러지게 피어 있는 벚꽃을 보자니 지나칠 수가 없었다.   바람이 불면 꽃 잎이 날려 꽃 비를 뿌린다. 어머니들이 모여 꽃을 배경으로 사진을 찍으시는데 나도 같이 웃고 있었다. 찍어드릴걸 그랬나 싶지만 잘 찍어야 한다는 압박감이 들어 포기하고 돌아섰다.   첼로로 연주하는 10cm의 봄이 좋냐를 들으며 길을 걷는다. 풍경과 소리가 잘 어울려 멋진 영상이 찍혔으리라.더 일찍 나올걸 후회하며 내가 좋아하는 베이커리 카페로 급히 발걸음을 옮긴다.   프랑스 사람들이 Bonjour로 인사하며 맞.. 2024. 5. 13.
@StateObject vs @ObservedObject View와 Logic을 분리하기 위해 MVVM (Model - View - ViewModel) 패턴을 사용하는데ViewModel은 Logic을 담당하여 View에서 사용할 데이터를 가공하는 역할을 한다.  SwiftUI에서는 ViewModel을 클래스로 구현하고 ObservableObject 프로토콜을 채택한다. 내부에는 View에서 사용할 데이터가 있어 @Published 프로퍼티로 해당 값의 변화를 알리게 되고메서드로 데이터를 가공할 수 있도록 한다.  class MyViewModel: ObservableObject { @Published var myData: [MyModel] = [] func insert(data: MyModel) { myData.append(data) } fu.. 2024. 5. 13.
[ChatGPT 검색] LazyVStack을 만들 때 뷰가 몇개까지 미리 만들어지는지 알아? SwiftUI에서 LazyVStack 안에 50개의 RoundedRectangle 뷰를 생성하여 스크롤 가능하게 하고 뷰가 보일(appear) 때마다 count 수를 증가시켰다. LazyVStack은 화면에 보이는 개수만큼 뷰를 생성하여 재사용한다고 알고 있었는데 강의 영상에서는 실제 뷰가 보이는 3개의 개수만큼 카운팅이 올라가지만 내가 한 예제에서는 처음부터 6개가 생성되었다. 그리고 onDisappear에서 count 수를 줄이게 만들었더니 10 - 11 정도로 count 값이 유지되었다. 그래서 궁금해서 다시 찾아봤당.   Q.50개의 아이템을 가진 LazyVStack을 만들 때 뷰가 몇 개까지 미리 만들어지는지 알아?LazyVStack은 스크롤 가능한 세로 스택을 생성할 때 화면에 한 번에 표시되.. 2024. 5. 12.