热门标签 | HotTags
当前位置:  开发笔记 > IOS > 正文

CoreData和FetchRequest,ForEach和“无法调用初始化程序”问题

如何解决《CoreData和FetchRequest,ForEach和“无法调用初始化程序”问题》经验,如何解决这个问题?

我只是迁移使用CoreDate而不是简单的集合。我正在使用iOS13 beta 8和Xcode11 beta 6。

struct BeaconList: View {
    @Environment(\.managedObjectContext) var managedObjectContext
    @FetchRequest(fetchRequest: fetchRequest(), animation: nil) var beacons: FetchedResults

    static func fetchRequest() -> NSFetchRequest {
        let request: NSFetchRequest = Beacon.fetchRequest()
        request.sortDescriptors = [NSSortDescriptor(key: "id", ascending: true)]

        return request
    }

    func buildView(name: String, beacons: [Beacon]) -> AnyView {
        return AnyView (
            Section(header: Text(name)) {
                ForEach(beacons) { beacon in
                    BeaconListEntry(beacon: beacon)
                }
            }
        )
    }

var body: some View {
    TabView {
        NavigationView {
            List {
                buildView(name: "MY BEACONS", beacons: beacons.filter { $0.isActive })
            }
            .navigationBarTitle("Beacons")
            .listStyle(GroupedListStyle())
            .navigationBarItems(trailing: addButton)
        }
        .tabItem {
            Image(systemName: "antenna.radiowaves.left.and.right")
            Text("Beacons")
        }

    }
}

BeaconListEntry如下所示:

struct BeaconListEntry : View {
   @Binding var beacon: Beacon

    var body: some View {
        HStack {
            Text(verbatim: beacon.name!)
        }
    }
}

(请忽略强制展开,仅用于测试目的)

当我在重写之前将其与集合一起使用时,它可以工作,但是现在我得到了消息

Cannot invoke initializer for type 'ForEach<_, _, _>' with an argument list of type '([Beacon], @escaping (Binding) -> BeaconListEntry)'

1. Overloads for 'ForEach<_, _, _>' exist with these partially matching parameter lists: (Data, content: @escaping (Data.Element) -> Content), (Range, content: @escaping (Int) -> Content)

对哪里看有任何想法吗?这是正确的使用方式FetchedResults吗?


推荐阅读
author-avatar
mobiledu2502875545
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有