2016-05-13 48 views
0

我见过一些教程如何使用嵌套节创建UITalbeview,但所有这些教程都使用预定义结构来保存表数据。UITableView和核心数据中的嵌套部分

这样:

科 SubSesction 项目 项目 款 项目 分段 项目 项目 项目 科 分段 项目 .... 等。

现在我正在尝试,但从核心数据中获取项目,让我们的项目实体具有dateAdded和timeAdded,因此该部分将按照dateAdded和小节添加timeAdded。

我得到的是使核心数据中的分组部分,但我如何获得SubSection信息?

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"] 

所以我将具有由日期分组的计数(区段数),为取result.count和字典包含每部分(每部分的行,以便NUM)每日期项目计数和分组dateAdded(所以我使用它的部分标题)

但我现在卡住了,如何使相同的子节。我不知道在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 

有什么想法?

谢谢。

回答

0

如果添加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每个唯一组合的数量。所以我认为这将提供每个部分的每个小节的项目数。

相关问题