1

我已经看过很多例子来展示如何做一个可折叠的表格视图,但我找不到适用于静态单元格的东西。我有几个在 IB 中制作的单元格,如果单击部分标题,我想折叠这些单元格,但我无法弄清楚或理解如何操作。如果有人能告诉我或指出一个这样做的例子,我将不胜感激。

这是我需要折叠的单元格之一的示例:

在此处输入图像描述

4

2 回答 2

1

您可以参考这个示例:(下载示例代码)

http://developer.apple.com/library/ios/#samplecode/TableViewUpdates/Introduction/Intro.html

所以基本上这段代码的作用是:

  1. 您在 -(UIView*)tableView:(UITableView*)tableView viewForHeaderInSection:(NSInteger)section 中创建 Section --> 每个 Section 都有 SectionHeaderView --> 您基本上将点击并展开您的表格视图。

  2. 您将实现两个委托方法:

    • -(void)sectionHeaderView:(APLSectionHeaderView*)sectionHeaderView sectionOpened:(NSInteger)sectionOpened

    • -(void)sectionHeaderView:(APLSectionHeaderView*)sectionHeaderView sectionClosed:(NSInteger)sectionClosed

--> 这将在内部调用 insertRowsAtIndexPaths 和 deleteRowsAtIndexPaths --> 这将在内部调用 tableview:cellForRowAtIndexPath --> 现在您需要创建包含地址、城市等的单元格...

如果您需要更多信息,请与我们联系。

于 2013-07-16T08:52:20.970 回答
0

多亏了这个,我终于找到了一个我很满意的解决方案:https ://github.com/xelvenone/StaticDataTableViewController

一个非常简单的实现解决方案:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    self.reloadTableViewRowAnimation = UITableViewRowAnimationMiddle;
    self.deleteTableViewRowAnimation = UITableViewRowAnimationMiddle;
    self.insertTableViewRowAnimation = UITableViewRowAnimationMiddle;

    if (indexPath.row == 0) {


        [self toggleCellVissibilityOrReload:self.cell1];

        } 

        [self reloadDataAnimated:YES];

}
于 2013-07-16T13:49:22.573 回答