0

就像 iPhone“设置”应用程序中的“Wi-Fi”一样,我有一个表格视图,其中第一部分中的开关切换是否显示以下部分。

insertSections: withRowAnimation:通过使用和deleteSections: withRowAnimation:更新后,我已经成功地工作了tableView: numberOfRowsInSection:。但是,与“设置”中的“Wi-Fi”不同,所有已删除的部分在消失之前会一起折叠。

我想达到与“Wi-Fi”相同的效果,当部分从视图中移除时,它们会单独折叠。

推荐的方法是什么?

4

1 回答 1

0

我能够deleteSections按部分进行调用:

static int nos = 4;

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return nos;
}

-(IBAction)onFadeTableButton:(id)sender
{
    NSMutableIndexSet *sectionsToDelete = [NSMutableIndexSet indexSet];
    [sectionsToDelete addIndex:3];

    nos = 3;
    [self.tableView deleteSections:sectionsToDelete
                  withRowAnimation:UITableViewRowAnimationTop];

    [sectionsToDelete addIndex:2];
    [sectionsToDelete removeIndex:3];
    nos = 2;
    [self.tableView deleteSections:sectionsToDelete
                  withRowAnimation:UITableViewRowAnimationMiddle];


    [sectionsToDelete addIndex:1];
    [sectionsToDelete removeIndex:2];
    nos = 1;
    [self.tableView deleteSections:sectionsToDelete
                  withRowAnimation:UITableViewRowAnimationMiddle];

    [sectionsToDelete addIndex:0];
    [sectionsToDelete removeIndex:1];
    nos = 0;
    [self.tableView deleteSections:sectionsToDelete
                  withRowAnimation:UITableViewRowAnimationMiddle];

}

代码很丑,因为我很快就使用了一个现有的项目(有 4 个部分的表格视图),但这个想法必须清楚。不要照原样使用它,请让它美丽。

于 2012-05-20T20:11:48.323 回答