gpt4 book ai didi

ios - UITableView 和 Core Data 中的嵌套部分

转载 作者:行者123 更新时间:2023-11-30 13:25:49 25 4
gpt4 key购买 nike

我看过一些如何制作带有嵌套部分的 UITalbeview 的教程,但它们都使用预定义的结构来保存表数据。

所以:

部分 小节 元素 元素 小节 元素 小节 元素 元素 元素部分 小节 元素....等等。

现在我正在尝试相同的操作,但是从核心数据中获取项目,让我们的项目实体具有 dateAdded 和 timeAdded,因此该部分将根据 dateAdded,子部分将根据 timeAdded。

我得到的是在核心数据中使用 group by 来制作部分部分,但是如何获取子部分信息?

    let countJulianDateAdded = NSExpressionDescription()
countJulianDateAdded.name = "countItemsAtDate"
countJulianDateAdded.expression = NSExpression(format: "count:(julianDateAdded)")
countJulianDateAdded.expressionResultType = .Integer32AttributeType

let sortDateDesc = NSSortDescriptor(key: "julianDateAdded", ascending: false)

let fetch = NSFetchRequest(entityName: "Item")
fetch.sortDescriptors = [sortDateDesc]
fetch.resultType = .DictionaryResultType
fetch.propertiesToFetch = [countJulianDateAdded,"julianDateAdded"]
fetch.propertiesToGroupBy = ["julianDateAdded"]

所以我将按日期(部分的数量)进行分组计数作为获取结果。计数和字典,其中包含每个部分每个日期的项目数(因此每个部分的行数)和分组的日期添加(所以我使用它对于部分标题)

但我现在陷入困境,如何为小节做同样的事情。我知道不要用 SQL 来思考,但我心里有这样的想法:

Select Count(dateAdded),dateAdded
(select count(timeAdded),timeAdded
from Item i2
where i2.dateAdded = i1.dateAdded
Group by timeAdded)
from Item i1
Group By dateAdded

有什么想法吗?

谢谢。

最佳答案

如果将 timeAdded 添加为要获取的属性和要分组的属性,如下所示:

let countJulianDateAdded = NSExpressionDescription()
countJulianDateAdded.name = "countItemsAtDate"
countJulianDateAdded.expression = NSExpression(format: "count:(julianDateAdded)")
countJulianDateAdded.expressionResultType = .Integer32AttributeType

let sortDateDesc = NSSortDescriptor(key: "julianDateAdded", ascending: false)

let fetch = NSFetchRequest(entityName: "Item")
fetch.sortDescriptors = [sortDateDesc]
fetch.resultType = .DictionaryResultType
fetch.propertiesToFetch = [countJulianDateAdded,"julianDateAdded","timeAdded"]
fetch.propertiesToGroupBy = ["julianDateAdded","timeAdded"]

您将获得 julianDateAddedtimeAdded 每个唯一组合的项目数。所以我认为这将提供每个部分的每个小节的项目数量。

关于ios - UITableView 和 Core Data 中的嵌套部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37203272/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com