Preview에서 SwiftData 사용하기(crashed due to an uncaught exception)
·
SwiftUI
Preview에서 SwiftData를 사용하기 위해서는 modelContainer를 설정해줘야 합니다  다음과 같이 ModelContainer를 정의하여 preview에서 사용될 데이터를 만들어야 합니다. 그렇지 않으면 다음과 같이 에러가 발생하는 것을 확인할 수 있습니다. configurations: ModelConfiguration(isStoredInMemoryOnly: true) 란 객체를 생성할 때 이 옵션을 true로 설정하면, 해당 컨테이너는 디스크에 데이터를 쓰지 않고 모든 작업을 메모리 내에서 수행합니다.import SwiftData@MainActorlet previewContainer: ModelContainer = { do { let container = try Mod..
SwiftData Fatal Error in ModelContainer.swift 에러
·
SwiftUI/에러해결
프로젝트를 진행하던 도중에 SwiftData를 사용하여 데이터를 영구 저장할 수 있는 기능을 추가하려다 아래와 같은 상황을 마주하게 되었습니다. 분명 문제되는 부분은 없어 보이는데 왜 안되는지 구글링을 계속 하였지만 해결되지 않았습니다.. 시도한것Apple의 데모 버전을 따라하기@Main 에서 modelContainer를 initialize해보기@Preview를 담아내는 뷰를 @MainActor로 지정하여 메인 스레드에서 동작하도록 만들기하지만 문제는 엄청 간단한 곳에서 해결되었습니다.@mainstruct SmartMovieApp: App { @State private var popularmovie = MoviePopularModel() @State private var detailem..
swiftUI - 간단하게 검색창 만들기
·
SwiftUI
수많은 앱에서는 검색하는 기능을 구현해야 하는 경우가 있습니다 코드코드는 엄청 간단합니다.  struct SearchBar: View { @Binding var text: String var body: some View { HStack { HStack { Image(systemName: "magnifyingglass") TextField("게임, 시리즈, 영화를 검색하세요...", text: $text) .foregroundColor(.primary) if !text.isEmpty { Button(action..
SwiftUI - 긴 글자 Text에서 일부만 표현하기 (with truncationMode)
·
SwiftUI
Text로 글자를 표현하고 싶을 때 글이 너무 길어 ...으로 처리하고 싶을 때 truncationMode를 사용합니다      위에 같이 Text에서 글이 너무 길면 뒤에 내용이 •••으로 처리되어 해결할 수 있습니다. 만약 너무 길면 UI가 깔끔해지지 않기 때문에 2번째 사진처럼 해결하는 경우가 대부분입니다. 해결방법방법은 turncationMode를 사용하는 것입니다. truncationMode 사용 전truncationMode를 사용하지 않으면 아래 코드처럼 사용되지만Text(movie.title) .foregroundStyle(Color.white) truncationMode 사용 후truncationMode를 사용하게 된다면 다음과 같습니다. 이때 truncationMode 는 3가지 종..
async let 으로 비동기 작업들을 동시에 수행하기 (2)
·
SwiftUI
async let을 사용하면 여러 데이터를 한번에 처리할 수 있습니다 https://apple-document.tistory.com/170 async let 으로 비동기 작업들을 동시에 수행하기 (1)async let 을 사용하면 시스템이 async let  오른쪽에 있는 비동기 함수를 병렬적으로 실행시킵니다   await를 사용할 때는 시스템이 해당 비동기 함수를 실행시킬 때마다 실행을 담당하는 스레드를apple-document.tistory.com 지난번에 이미지를 예를 들어 여러 이미지를 가져올 때 딜레이를 없애고 여러 이미지를 동시에 가져오는 방법인 async let을 알아봤었습니다. 이번에는 실제로는 어떻게 사용되었는지 코드를 분석하면서 알아볼 것입니다. 사용 사례박스오피스 영화 데이터를 가져오..
통신을 위한 URLComponents 구성하기
·
SwiftUI
통신을 하기 위해서는 URLComponents를 사용하여 통신할 URL를 구성할 수 있습니다  URLComponents를 사용하는 이유URLComponents를 사용하는 이유에 대해서 먼저 설명하겠습니다.  예를 들어 특정 URL를 이용하여 데이터를 가져오려고 하는 상황이 있을 수 있습니다. 그렇기 위해서는 해당 URL를 직접 String 형식으로 만들어 요청할 수 있습니다. 다음과 같이 말이죠(GET) https://api.themoviedb.org/3/movie/157336?api_key=examplekeytogetmovie 보통은 복붙을 하지만 만약 직접 타이핑을 하게 되는 경우에는 쿼리가 길어질수록 점점 실수할 가능성을 배제할 수 없게 됩니다. 이렇게 길게 직접 사용하는 방법보다는 URLCompo..
ytw_developer
'SwiftUI' 카테고리의 글 목록 (7 Page)