mul*_*des 41 core-data ios swift swiftui
[编辑] 我希望 Apple 能够修复明显的错误。解决方法是清除缓存,关闭并重新打开Xcode。
我正在使用 Xcode Beta 并开始一个新项目,但没有编写一行代码,我已经收到错误消息。我在网上找不到任何东西。也许这太新了?
在新版本的 Xcode 中,我选择了新项目,
然后用核心数据勾选框
如果我不勾选这个框,我会得到带有“hello world”的常用 Xcode SwiftUI 模板,但是勾选 Core Data 框,我会从 Apple 那里得到更多的模板代码,并且没有触及任何东西,也没有更改任何一行代码,我得到一个错误信息编译它..
错误是:“在范围内找不到项目”
非常令人沮丧,尤其是因为我所有的教程都是从经典的“AppDelegate”文件配置开始的……而新的 SwiftUI 是“通用的”!
我检查了文件.xcdatamodeld
,它看起来不错,并且有“项目”实体。为什么不编译?
所以我现在不知所措,是否有解决方案或者这是一个错误,需要等待Apple发布修复程序。如果是这样,在那之前我不需要开始一个新项目!
PS 今天我用 CMD-ALT-SHIFT-K 清理了缓存,关闭了 Xcode,从模拟器中删除了应用程序,重新打开,重建,它确实编译了......但模拟器中什么都没有!我们在进步!我仍然没有更改一行代码。一切都是Apple模板!
Ida*_*dan 49
正常的 Xcode 清除对我有用:
干净生成文件夹(SHIFT+ COMMAND+ K)
完全退出Xcode
删除项目中的内容, DerivedData/{Project Name}_some_hash
默认位置是 ~/Library/Developer/Xcode/DerivedData
,但如果找不到,请检查Xcode 下的派生数据属性?喜好 ?地点
再试一次(运行 Xcode & build)
小智 6
首先,这不是您的应用程序的问题,而是预览的问题。您的应用程序在模拟器上正常运行。白屏是因为你需要用 NavigationView() 包裹你的列表才能看到添加和编辑按钮。看到这个答案:https : //stackoverflow.com/a/66234095/15224199
之后,您将在模拟器上看到添加和编辑按钮。但是您也必须修复预览。它不起作用,因为您有一个空实体,您需要模拟它。转到 Persistance.swift ,您应该添加类似于我的 for 循环以在预览变量中创建模拟项:
static var preview: PersistenceController = {
let result = PersistenceController(inMemory: true)
let viewContext = result.container.viewContext
for _ in 0..<10 {
let newItem = Item(context: viewContext)
newItem.timestamp = Date()
}
do {
try viewContext.save()
} catch {
// Replace this implementation with code to handle the error appropriately.
// fatalError() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development.
let nsError = error as NSError
fatalError("Unresolved error \(nsError), \(nsError.userInfo)")
}
return result
}()
Run Code Online (Sandbox Code Playgroud)
最后确保您的预览使用这些模拟值:
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView().environment(\.managedObjectContext, PersistenceController.preview.container.viewContext)
}
Run Code Online (Sandbox Code Playgroud)
之后,它应该可以正常工作,希望它有所帮助。我不知道为什么苹果提供了一个一开始就不能正常工作的模板。
归档时间: |
|
查看次数: |
19936 次 |
最近记录: |