小编Kev*_*ats的帖子

CoreData 和 SwiftUI:环境中的上下文未连接到持久存储协调器

我正在尝试通过构建作业管理应用程序来自学 Core Data。我的代码构建良好,应用程序运行正常,直到我尝试向列表添加新分配。我得到这个错误Thread 1: EXC_BREAKPOINT (code=1, subcode=0x1c25719e8)以下行:ForEach(courses, id: \.self) { course in。控制台也有这个错误:Context in environment is not connected to a persistent store coordinator: <NSManagedObjectContext: 0x2823cb3a0>

我对 Core Data 知之甚少,不知道可能是什么问题。我在数据模型中设置了“作业”和“课程”实体,其中课程与作业具有一对多关系。每个作业将被归类到特定的课程下。

这是向列表添加新分配的视图的代码:

    struct NewAssignmentView: View {

    @Environment(\.presentationMode) var presentationMode
    @Environment(\.managedObjectContext) var moc
    @FetchRequest(entity: Course.entity(), sortDescriptors: []) var courses: FetchedResults<Course>

    @State var name = ""
    @State var hasDueDate = false
    @State var dueDate = Date()
    @State var course = Course()

    var body: some View {
        NavigationView {
            Form …
Run Code Online (Sandbox Code Playgroud)

core-data swift swiftui

31
推荐指数
2
解决办法
8713
查看次数

SwiftUI 选择器选择绑定未更新

I am trying to have a picker list all of a type, called Course and then let the user select the appropriate course when adding a new Assignment to the managed object context. The picker selection binding (courseIndex) isn't updated when the user taps a row in the picker view. I'm not entirely sure how to fix the issue, nor do I know what is causing it. Any help is appreciated!

Here is the affected code:

struct NewAssignmentView: …
Run Code Online (Sandbox Code Playgroud)

core-data ios swift swiftui

5
推荐指数
2
解决办法
1676
查看次数

SwiftUI:导航栏不会填满 iPhone X 和更新设备上的屏幕顶部

我使用 SwiftUI 和导航视图创建了一个主从应用程序,但导航栏未正确显示在详细信息视图上。在 iPhone X 和更新的设备上,它不会填满屏幕的顶部(时间和状态图标所在的位置)。我使用主从模板在 Xcode 中创建了一个新项目,该应用程序渲染得很好。我已将我的应用程序与模板进行了比较,老实说我找不到任何不合适的地方,所以欢迎提出任何建议!

这是我的应用程序的屏幕截图。请注意,导航栏没有填满屏幕顶部:

我的应用程序无法正确呈现导航栏。

这是模板应用程序的屏幕截图,它按应有的方式显示栏:

模板应用程序,可以正确显示栏。

这是主视图的代码:

struct ListView: View {

@State var showNewAssignmentModal = false
@Environment(\.managedObjectContext) var context
@FetchRequest(entity: Assignment.entity(), sortDescriptors: [NSSortDescriptor(keyPath: \Assignment.dueDate, ascending: true), NSSortDescriptor(keyPath: \Assignment.name, ascending: true)]) var assignments: FetchedResults<Assignment>

var body: some View {
    NavigationView {
        List(assignments, id: \.self) { assignment in
            AssignmentRow(assignment: assignment).environment(\.managedObjectContext, self.context)
        }

        .navigationBarTitle(Text("Lists"))
        .navigationBarItems(
            leading: EditButton(),
            trailing: Button(
                action: {
                    self.showNewAssignmentModal = true
            }
            ) {
                Image(systemName: "plus").imageScale(.large)

            } .sheet(isPresented: $showNewAssignmentModal) {
                NewAssignmentView().environment(\.managedObjectContext, self.context)
            }
        )

    }
} …
Run Code Online (Sandbox Code Playgroud)

ios swift swiftui

5
推荐指数
1
解决办法
3389
查看次数

一位用户的 SwiftUI 因 EXC_BREAKPOINT (SIGTRAP) 崩溃,我无法在模拟器中复制它

今年我自学了编程,终于开始通过 TestFlight 与一些朋友分享我的应用程序。我的一位朋友无法在应用程序崩溃的情况下点击应用程序中的任何内容,但我似乎无法在模拟器中复制该问题。这是崩溃日志:

Incident Identifier: 9C5CBC92-D799-4EF7-A0BD-B3D38BDFCD6A
Beta Identifier:     14981E01-C6E4-4340-A6C2-2C7730C5F39F
Hardware Model:      iPhone9,3
Process:             Skool [849]
Path:                /private/var/containers/Bundle/Application/CD824E3B-BB88-47D1-912E-55156C40187E/Skool.app/Skool
Identifier:          com.kevinolmats.Skool
Version:             2777 (0.2.2)
AppStoreTools:       11E503a
AppVariant:          1:iPhone9,3:13
Beta:                YES
Code Type:           ARM-64 (Native)
Role:                Foreground
Parent Process:      launchd [1]
Coalition:           com.kevinolmats.Skool [677]


Date/Time:           2020-05-09 10:19:43.2873 -0600
Launch Time:         2020-05-09 10:19:41.3463 -0600
OS Version:          iPhone OS 13.4.1 (17E262)
Release Type:        User
Baseband Version:    4.02.02
Report Version:      104

Exception Type:  EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000001, 0x00000001becb85e0
Termination Signal: Trace/BPT trap: 5
Termination Reason: …
Run Code Online (Sandbox Code Playgroud)

core-data ios swift swiftui

3
推荐指数
1
解决办法
967
查看次数

标签 统计

swift ×4

swiftui ×4

core-data ×3

ios ×3