标签: fetchrequest

SwiftUI macOS fetch json 错误 [logging] 卷不支持数据保护,剥离 SQLITE_OPEN_FILEPROTECTION_* 标志\

我厌倦了为我的 IOS 应用程序构建一个 macOS 应用程序(Xcode 12,SwifUI)。要从我的网站获取 json 数据,我需要一个获取请求(没有 API 密钥)。我在 medium、hackingwithswift 等上找到了几个样本,但我总是保持相同的错误。

[logging] volume does not support data protection, stripping SQLITE_OPEN_FILEPROTECTION_* flags\
Run Code Online (Sandbox Code Playgroud)

我想知道为什么我只在 macOS 项目上出现这个错误,因为我的 IOS 版本工作正常。

class FetchDeviceInfo: ObservableObject {

    @Published var deviceInfo = [DeviceData]()

    init() {

        let url = "https://yourURL"

        let session = URLSession(configuration: .default)

        session.dataTask(with: URL(string: url)!) { (data, _, _) in

            guard let json = data else{return}

            do{

                let data = try JSONDecoder().decode([DeviceData].self, from: json)

                print(images)

                DispatchQueue.main.async {
                    self.deviceInfo = data
                }
            }
            catch{
                print(error.localizedDescription)
            } …
Run Code Online (Sandbox Code Playgroud)

macos json swiftui fetchrequest xcode12

22
推荐指数
2
解决办法
3098
查看次数

如何在 SwiftUI 中将 @FetchRequest 与新的可搜索修饰符一起使用?

是否可以将 new.searchable与 结合使用@FetchRequest

我有这样的代码:

struct FooListView: View {
    @Environment(\.managedObjectContext) private var viewContext
    
    @FetchRequest(
        sortDescriptors: [NSSortDescriptor(keyPath: \Foo.name, ascending: true)],
        animation: .default)
    private var items: FetchedResults<Foo>

    @State var searchText = ""

    var body: some View {
        NavigationView {
            List {
                ForEach(items) { item in
                    NavigationLink(destination: FooView(Foo: item)) {
                        Text(item.wrappedName)
                    }
                }
                .onDelete(perform: deleteItems)
            }
            .searchable(text: $searchText)
            .navigationTitle("Foos")
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我想使用 来searchText过滤我的FetchedResults.

searchable swift swiftui fetchrequest

11
推荐指数
2
解决办法
3030
查看次数

使用 FetchRequest 时如何在 PreviewProvider 中显示示例数据

我有一个像这样的 SwiftUI 视图:

import SwiftUI

struct ReView: View {
    @Environment(\.managedObjectContext) var moc
    @FetchRequest(
        entity: Re.entity(),
        sortDescriptors: [
            NSSortDescriptor(keyPath: \Re.name, ascending: false)
        ]
    ) var entities: FetchedResults<Re>
    
    var body: some View {
        NavigationView {
            List(entities, id: \.self) { entity in
                Text(entity.name ?? "Unknown")
            }
        }
    }
}

struct ReView_Previews: PreviewProvider {
    static var previews: some View {
            Group {
               
                ReView()
                    .environment(\.managedObjectContext, PersistentCloudKitContainer.persistentContainer.viewContext)
            }
        }
}
Run Code Online (Sandbox Code Playgroud)

如何在预览中显示一些示例数据?

core-data swiftui fetchrequest

6
推荐指数
1
解决办法
267
查看次数

在 SwiftUI 中的 ForEach 中绑定

我使用 aFetchRequest来填充元素。然后我使用一个列表,并希望显示某种待办事项元素,您可以在其中看到哪些元素被选中,哪些元素未被选中。因此我创建了一个 CheckBoxView。

我现在的问题是,我需要将绑定传递给视图。但如何在 ForEach 中做到这一点呢?如果我有一个绑定,这对我来说很容易,我只需生成一个@State即可。这里该怎么做呢?

List {
    ForEach(elements, id: \.self) { item in
        CheckBoxView(checked: item.checked)
    }
}
Run Code Online (Sandbox Code Playgroud)

这是视图:

struct CheckBoxView: View {
    @Binding var checked: Bool
    ....
}
Run Code Online (Sandbox Code Playgroud)

foreach binding swift swiftui fetchrequest

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

如何选择性地初始化@FetchRequest

我的 SwiftUI 项目中有以下代码

@FetchRequest private var step: FetchedResults<Steps>
private var processID: UUID
private var stepID: UUID?

init(procID: UUID, stepID: UUID?) {
    if stepID != nil {
        let predicate = NSPredicate(format: "id == %@", stepID! as CVarArg)
        _step = FetchRequest<Steps>(sortDescriptors: [], predicate: predicate)
    }
    processID = procID
}
Run Code Online (Sandbox Code Playgroud)

我想知道是否可以以某种方式从 init() 返回空步骤 FetchRequest,以防传递的 stepID 为零。当前未编译它,因为步骤 var 未初始化。我试图使其成为可选的,但编译器不喜欢它。

init swiftui fetchrequest

2
推荐指数
1
解决办法
737
查看次数

标签 统计

fetchrequest ×5

swiftui ×5

swift ×2

binding ×1

core-data ×1

foreach ×1

init ×1

json ×1

macos ×1

searchable ×1

xcode12 ×1