如何在 SwiftUI 中限制 FetchRequest 中的结果数

Posted

技术标签:

【中文标题】如何在 SwiftUI 中限制 FetchRequest 中的结果数【英文标题】:How to limit the number of results in a FetchRequest in SwiftUI 【发布时间】:2019-12-23 05:57:37 【问题描述】:

在将FetchRequest 制作为CoreData 时,如何限制检索到的FetchedResults 的大小?

struct ContentView: View 
    var fetchRequest:FetchRequest<Kana>

    init()
        fetchRequest = FetchRequest<Kana>(entity: Kana.entity(), sortDescriptors: [], predicate: NSPredicate(format: "alphabet == %@", "hiragana"))
    

    var body: some View 
        List
            Text("10 Kanas")
            // Display 10 Kanas
        
    


【问题讨论】:

【参考方案1】:

你需要使用对应的初始化器创建FetchRequestNSFeatchRequest,如下所示

init() 
    let request: NSFetchRequest<Kana> = Kana.fetchRequest()
    request.fetchLimit = 10
    request.predicate = NSPredicate(format: "alphabet == %@", "hiragana")
    fetchRequest = FetchRequest<Kana>(fetchRequest: request)

【讨论】:

以上是关于如何在 SwiftUI 中限制 FetchRequest 中的结果数的主要内容,如果未能解决你的问题,请参考以下文章

如何更改 SwiftUI 列表中文本数量的最大限制?

如何在图像前面制作一个按钮,但限制在 SwiftUI 中视图的左下角和右下角?

SwiftUI - 如何限制 ForEach 中显示的对象数量

SwiftUI:如何限制图像大小?

SwiftUI Drag 事件如何限制仅检测水平/垂直滚动

文本字段背景图像 Aspect fit 限制了 swiftUI 中 iPad 的宽度