1

我正在使用基于 UITableView 的手风琴视图构建应用程序。此代码基于可在此处此处找到的 Apple 示例代码。在示例代码中,我要解决的问题就在那里,所以我知道这不是我介绍的东西。

如果您打开多个部分而不明确关闭前一个部分,则可以同时打开多个部分。这可能导致崩溃,可以通过点击按钮 1、2、3、1、1、3 来复制。

在我的应用程序中,我试图关闭上一个部分,并且当打开一个新部分时,标题中的按钮进入未选中状态,这样您一次只能打开一个部分并选择一个部分标题按钮. 如果有人对此示例代码或 tableview 的使用有任何经验,我很乐意纠正这个问题,特别是因为这是 Apple 自己的代码中固有的问题

4

1 回答 1

2

APLSectionInfo 的属性 APLSectionHeaderView* headerView 从未设置。所以sectionInfo.headerView = sectionHeaderView在 tableView 委托方法中设置。

-(UIView*)tableView:(UITableView*)tableView viewForHeaderInSection:(NSInteger)section {

    APLSectionHeaderView *sectionHeaderView = [self.tableView dequeueReusableHeaderFooterViewWithIdentifier:SectionHeaderViewIdentifier];

    APLSectionInfo *sectionInfo = (self.sectionInfoArray)[section];

    sectionHeaderView.titleLabel.text = sectionInfo.play.name;
    sectionHeaderView.section = section;
    sectionHeaderView.delegate = self;
    sectionInfo.headerView = sectionHeaderView;
    return sectionHeaderView;
}
于 2013-06-19T11:08:55.863 回答