(WatchOS, CloudKit) Bad Container" (1014); "Couldn't get container configuration from the server for container when trying to use the default container.
·
SwiftUI/에러해결
Xcode 11.1 이전에는 기본 default() 컨테이너로 접근이 가능했지만 11.1 부터는 직접 identifier 로 구분하여 인스턴스를 만들어야 합니다let publicDatabase = container.default().publicCloudDatabase 다음은 컨테이너의 이름을 직접 사용하여 인스턴스를 만들었으며 이렇게 하면 에러가 해결됩니다.let publicDatabase = CKContainer(identifier: Constants.containerIdentifier).publicCloudDatabase
SwiftData - A default value requires a fully qualified domain named value, Model 프로퍼티에 Enum 사용하기
·
SwiftUI/에러해결
Enum 타입의 변수를 만들어 사용하려 했지만A default value requires a fully qualified domain named value 에러가 발생하였습니다. 해결방법은 바로 타입을 Category 으로 선언하였지만 이후 값에서도 어떤 Enum 인지 직접적으로 명시해줘야 합니다.@Modelclass Quote: Decodable, Identifiable { var id: UUID = UUID() var quote: String = "" var author: String = "" var category: Category = Category.unknown
SwiftData - FetchDescriptor 에러 (Cannot convert value of type 'PredicateExpressions.Equal<...
·
SwiftUI/에러해결
Cannot convert value of type 'PredicateExpressions.Equal, UUID>, PredicateExpressions.KeyPath, UUID>>' to closure result type 'any StandardPredicateExpression'에러가 발생하였습니다.  문제가 발생한 이유는 Predicate 내부에서 다른 모델 객체를 참조하는 것은 불가능하기 때문입니다.위에 코드에서는 quote.id 를 통해서 quote 모델 객체의 id 를 참조하고 있으므로 문제가 발생합니다.predicate: #Predicate { $0.id == quote.id } 그렇기 때문에 단순히 Predicate 외부에 참조할 객체의 변수를 담아 다음과 같이 문제를 해결할 수 있습니다..
SwiftUI - onChange 클로저 내부로 값 변경, 관찰 변경 안될 때
·
SwiftUI/에러해결
SwiftUI 에서는 onChange 를 제공하여 특정 값의 변화를 감지할 수 있습니다  문제 발생이번에는 지도에서 특정 값이 변경되었을 때 sheet를 올라오게 만들기 위해서 onChange 내부에 isPresented 프로퍼티 값을 변경시키도록 코드를 만들었으나 showDetails의 값이 변경되었음에도 불구하고 sheet 가 올라오지 않는 문제를 발견하였습니다. 문제가 되는 코드를 먼저 살펴보겠습니다. 다음은 mapState의 selectedResult 값이 변경되었으면 showDetails 라는 값을 변경시켜 sheet 를 올려보내려는 코드입니다..onChange(of: mapState.selectedResult, { oldValue, newValue in if newValue != nil ..
SwiftUI - MapUserLocationButton 작동 안될 때
·
SwiftUI/에러해결
MapUserLocationButton 를 누르게 되면 현재 자신의 위치로 지도가 이동합니다  문제 인식MapUserLocationButton 를 MapControls 클로저 내부에도 만들어보았고 scope 를 사용하여 클로저 외부에도 만들어 보았으나 버튼이 눌리는 것은 인식이 되나 지도의 내 위치로 이동하지 않는다는 것을 확인하였습니다. 문제 해결 과정이런 문제들을 해결하기 위해서 코드들을 한줄씩 주석 처리하며 문제해결을 시도하였습니다.하지만 주석 처리를 하였지만 그래도 문제가 해결되지 않아 코드를 직접 지우면서 테스트를 진행해본 결과 주석을 safeAreaInset 가 에러의 원인이 되었습니다. 분명 safeAreaInset 내부에 코드는 모두 주석 처리 되어 있었지만 map과 함께 safeAreaI..
SwiftUI - Sheet 내부에서 꾹 눌렀을 때만 동작, long press
·
SwiftUI/에러해결
Sheet에서 2~3초 이상 컴포넌트를 눌렀을 때 동작하는 경우가 있습니다  해당 문제는 NavigationLink 또는 DatePicker 등 여러 곳에서 발생할 수 있습니다. 이번에 다룰 내용은 sheet 내부에서 DatePicker 를 눌렀음에도 불구하고 2~3초 이상 누르지 않는다면 DatePicker를 focus할 수 없는 문제를 해결한 내용입니다. 해결 전 코드아래는 발생하게 됐던 코드입니다. 간결하게 body를 구현하였으며 별다른 문제는 없어보였습니다.VStack { headerSection Divider() contentSection Spacer()}@ViewBuilder private var contentSection: some View { VStack(spac..
ytw_developer
'SwiftUI/에러해결' 카테고리의 글 목록