我目前在编码方面面临一个大问题,但我找不到任何解决方案。
就像你在这里看到的,我想用以下内容创建一个可扩展的表视图:
我的意思是,如果你点击"2A","2A-1","2A-2“等列表就会扩大。如果单击"2B","2B-1“、"2B-2”列表就是等等。
你觉得我怎么能应付得来?
发布于 2012-10-09 03:28:51
我在一些产品中写了一个这种性质的解决方案。实现这一点的代码有点广泛,所以我将给您一个高层次的概述。
创建每个“行”作为一个节。显然,重写viewForHeaderInSection等等,以便使每个节标题实际上看起来像一行。
视图控制器是否持有展开部分的数组(非展开部分被折叠)
在- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section检查中,查看该部分是否展开,如果是,则返回子项数,否则,返回0。
因此,cellForRowAtIndexPath总是只返回subItems,而viewForHeaderInSection总是返回父函数。
当用户单击标题单元格时,切换区段展开标志和reloadSections:withRowAnimation:,以获得一个很好的动画转换。
请注意,因为在IOS6之前,节标题总是被重新创建,并且从未缓存,所以性能并不好。有了IOS6,这个问题就解决了,因为它也回收头单元格。
发布于 2012-10-09 03:49:54
对于可扩展的单元格,您可以使用VPPDropDown类,我自己使用它,它很好:)
https://stackoverflow.com/questions/12790704
复制相似问题