SwiftUI
[SwiftUI] SwiftUI의 디자인 패턴 적용이 필요한가?
많은 글을 보다가 상세하게 설명한 글들을 보며 직접 SwiftUI를 써본 경험으로 이미 SwiftUI는 MVVM이 내제 되어있는 것이 아닌가.. 라고 생각했다. 그래서 VIPER나 VIP 코디네이터, 라우터 등 많은 디자인 패턴들이 SwiftUI와 호환이 되는지 궁금하여 찾아보게 되었다. 그래서 그것들을 매~우 잘 설명해준 블로거 분의 글이 있어 참고할 만한 글일 것 같아 나의 블로그에 링크를 남기게 되었다. https://gon125.github.io/posts/SwiftUI%EB%A5%BC-%EC%9C%84%ED%95%9C-%ED%81%B4%EB%A6%B0-%EC%95%84%ED%82%A4%ED%85%8D%EC%B2%98/ SwiftUI를 위한 클린 아키텍처 들어가기에 앞서 gon125.github.io
![[SwiftUI] KFImage placeholder 사용법](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FcQB1Lg%2FbtrOSb6uJbP%2FAAAAAAAAAAAAAAAAAAAAAOLPK8dLhoG2nDfoWe3HcNNtur7VB9MmkB5DXU0uBo5n%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DR%252FKXbTZe8iZxqM7frkbakCle%252FE0%253D)
[SwiftUI] KFImage placeholder 사용법
KFImage placeholder 사용법 KFImage.url(URL(string:"")) .placeholder { Image("assetImage") .resizable() .aspectRatio(contentMode: .fill) .frame(width: UIScreen.main.bounds.width, height: 160) } .resizable() .aspectRatio(contentMode: .fill) .frame(width: UIScreen.main.bounds.width, height: 160)
![[SwiftUI] ObservableObject 강제 새로고침 하는 법](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FDMldR%2FbtrORZMx2As%2FAAAAAAAAAAAAAAAAAAAAAPkdlmooTWhL0sSdCV7XcCbc5dKTF914EXSaH4KcdlSo%2Fimg.jpg%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DsoIXR%252B%252F044Y0%252BSlEL2Hh8Cbx8ig%253D)
[SwiftUI] ObservableObject 강제 새로고침 하는 법
@StateObject 혹은 @EnvironmentObject 의 데이터에 따라 View가 최신화 되지 않는 경우 ObservableObject 클래스 내 @Published 데이터 변화를 강제로 보내는 법 class ExViewModel: ObservableObject { @Published data: String = "example" func example() { ..... self.data = "example change" //@Published 변수가 변동됨을 강제로 View에 알림 self.objectWillChange.send() } }