UITableViewCell 折叠与展开


需求:

   一级列表展示分类,二级类表显示分类的具体详细信息:

   比如: 一级列表显示: 北京,天津,上海等,

           二级列表 点击北京显示 朝阳区,海淀区,玄武区,等等

          但是只有一个是展开的,如果北京市展开那么其他都要折叠.

      

      主要方法:

- (void)didSelecterSection:(AddressTableHeader*)header{
    
    NSInteger tag = header.tag;

    // 第一步
    if (selectedSection != tag && selectedSection != -1) {
        exentenDict[@(selectedSection)] = @(false);

        NSIndexSet *set = [[NSIndexSet alloc]initWithIndexesInRange:NSMakeRange(selectedSection, 1)];
        [_chooseLocationView.tableView reloadSections:set withRowAnimation:UITableViewRowAnimationAutomatic];

    }
    
    // 第二步
    
    BOOL exten = exentenDict[@(tag)].boolValue;
    exentenDict[@(tag)] = @(!exten);
    
    NSIndexSet *set = [NSIndexSet indexSetWithIndex:tag];
    
     [_chooseLocationView.tableView reloadSections:set withRowAnimation:UITableViewRowAnimationAutomatic];
    
    selectedSection = tag;

}


注意顺序:

必须先判断是否是点击的与上次的是同一行,如果是先要把上一行折叠,然后才可以展开下一行,如果不是则直接展开当前行.好了如果还有问题可以随时咨询.






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值