所以我从来没有GOT如何使用titleForHeaderInSection,基本上将UITableView分组工作。我放弃了尝试创建一个并最终使用普通列表。如果可以解释以下任何一点,我将不胜感激:
了解它......
如果我想要一个分组的UITableView我明白我需要使用numberOfSectionsInTableView返回我想要的组(部分)。说,返回3.
然后我需要返回每个不同部分中有多少行,对吧?我可以在numberOfRowsInSection中完成。比如说,第一部分返回2,第二部分返回4,第三部分返回6,对吧?
如果我希望每个部分都有不同的标题,我需要使用titleForHeaderInSection,但我觉得使用起来很棘手。然而,似乎我只需要获取部分整数并使用objectAtIndex将标题设置为我的部分的数组,对吗?
在cellForRowAtIndexPath中,我是否需要对部分或我将如何显示单元格做任何事情?似乎我没有,但我不确定......
问题
我的数据结构相似(它是一个包含每个数组条目中字典的JSON数组):
ArrayItemOne
DictionaryKeyOne:DictionaryValueOne
DictionaryKeyTwo:DictionaryValueTwo
ArrayItemTwo
DictionaryKeyOne:DictionaryValueOne
DictionaryKeyTwo:DictionaryValueTwo
ArrayItemThree
DictionaryKeyOne:DictionaryValueOne
DictionaryKeyTwo:DictionaryValueTwo
我的部分标题实际上是上面所有3个ArrayItemFoo的DictionaryValueTwo,它是动态的,我不知道它们中有多少将是今天或明天,它来自JSON。然后我创建一组独特的数据并计算它。那是我的numberOfSectionsInTableView。
但是,如果他们的DictionaryValueTwo匹配节标题,我将如何在每个不同的部分中通过此DictionaryValueTwo分组我的行?现在我无法控制每个部分中的行,这是一团糟,我很困惑。
想象一下:所有活动都有一个日期,我的部分是非重复的活动日期,但我的活动只需要在与其日期相匹配的部分中显示。而已。我太傻了,无法理解UITableView分组的工作原理......
我的代码
我已经使用普通列表编写了一个UITableView,如果它有助于理解我的问题,它有一些注释掉的分组列表:http://github.com/caio1982/CorreCuritiba/blob/master/iOS/CorreCuritiba/CorreCuritiba/CCMasterViewController.m
再一次:一些代表例证解释的代码会很棒,但并不是强制性的,我真的希望了解分组的UITableViews,概念和机制。
是的,我已经搜遍了所有人并没有找到任何有同样问题的人。
答案 0 :(得分:0)
答案 1 :(得分:0)
古斯塔沃·博伊科(Gustavo Boiko)的补丁很好地解释了它应该如何运作。毕竟我的数据结构是错误的:https://github.com/caio1982/CorreCuritiba/pull/3