美文网首页
iOS-TableView中cell的显示与隐藏

iOS-TableView中cell的显示与隐藏

作者: 宇玄丶 | 来源:发表于2017-04-19 10:19 被阅读0次

    项目中,总会遇到各种鬼需求,比如cell的显示隐藏就算吧,好好的数据直接展示就得了呗,非得隐藏起来,我就纳闷了,隐藏了,还显示嘎哈啊?毕竟就是个撸代码的,咋也得搞出来。

    效果图就是这样:

    黑色的为每组头视图,点击展开隐藏的cell,再点击收缩隐藏。黑色的为每组头视图,点击展开隐藏的cell,再点击收缩隐藏。

    黑色的为每组头视图,点击展开隐藏的cell,再点击收缩隐藏。
    各种设置,已经封装起来了,使用的时候,直接遵守各个协议就可以了。

    
    #pragma mark - YUFoldingTableViewDelegate / required
    - (PackUpTableViewSectionHeaderArrowPosition)perferedArrowPositionForYUFoldingTableView:(PackUpTableView *)yuTableView {
        return self.arrowPosition ? :PackUpTableViewSectionHeaderArrowPositionRight;
    }
    
    - (NSInteger )numberOfSectionForPackUpTableView:(PackUpTableView *)tableView{
        return 4;
    }
    
    - (NSInteger )packUpTableView:(PackUpTableView *)tableView numberOfRowsInSection:(NSInteger )section {
        return 3;
    }
    
    - (CGFloat )packUpTableView:(PackUpTableView *)tableView heightForHeaderInSection:(NSInteger )section {
        return 50;
    }
    
    - (CGFloat )packUpTableView:(PackUpTableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
        return 50;
    }
    
    - (NSString *)packUpTableView:(PackUpTableView *)tableView titleForHeaderInSection:(NSInteger)section {
        return self.titleArray[section];
    }
    
    - (UITableViewCell *)packUpTableView:(PackUpTableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
        static NSString *cellID = @"cellID";
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];
        if (cell == nil) {
            cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:cellID];
        }
            cell.textLabel.text = self.valueArray[indexPath.row];
            cell.textLabel.textColor = [UIColor redColor];
            cell.detailTextLabel.text = self.valueDetailArray[indexPath.row];
            cell.detailTextLabel.textColor = [UIColor redColor];
            return cell;
    }
    
    - (void )packUpTableView:(PackUpTableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
        [tableView deselectRowAtIndexPath:indexPath animated:YES];
    }
    
    #pragma mark - YUFoldingTableViewDelegate / optional
    - (NSString *)packUpTableView:(PackUpTableView *)tableView descriptionForHeaderInSection:(NSInteger )section {
        return self.titleDetailArray[section];
    }
    

    以上就是主要的几个协议方式,基本也就这些,写上了,请求数据,再一赋值就OK了。

    链接:https://github.com/Baiyongyu/PackUpTableView.git

    相关文章

      网友评论

          本文标题:iOS-TableView中cell的显示与隐藏

          本文链接:https://www.haomeiwen.com/subject/dbuczttx.html