美文网首页
UITabelView

UITabelView

作者: 小屋新 | 来源:发表于2018-03-11 11:35 被阅读8次

    一、去掉tableview的线条

    tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
    

    二、取消cell的点击状态

    +(instancetype)settingCellWithTableView:(UITableView *)tableview andIndexPath:(NSIndexPath *)indexPath{
        static NSString *ID = @"OrderDetailTableViewCell";
        OrderDetailTableViewCell *cell = [tableview dequeueReusableCellWithIdentifier:ID];
        if (cell == nil) {
            cell = [[[NSBundle mainBundle] loadNibNamed:@"OrderDetailTableViewCell" owner:nil options:nil] lastObject];
        }
        cell.selectionStyle = UITableViewCellSelectionStyleNone;
        return cell;
    }
    

    三、回到tabelview的顶部

     [self.tableView reloadData];  
     NSIndexPath * dayOne = [NSIndexPath indexPathForRow:0 inSection:0];// 若想滚动到指定位置  ,修改row和section的值即可
    [self.tableView scrollToRowAtIndexPath:dayOne atScrollPosition:UITableViewScrollPositionTop animated:YES];
    

    四、设置tabelview的偏移量

    tableView.contentInset = UIEdgeInsetsMake(100, 0, 0, 0);
    

    五、设置cell自适应高度,使用masory布局

    // tableview添加两行代码
    _mainTabelView.estimatedRowHeight = 80; _mainTabelView.rowHeight = UITableViewAutomaticDimension
    

    对cell中的控件添加约束,因为是自适应高度,所以我们在Y轴方向上,必须要添加三个约束,上,下,高度

    [self.numTextField mas_makeConstraints:^(MASConstraintMaker *make) {
            make.right.mas_equalTo(self.cmLabel.mas_left).offset(- K_ScreenWidth/360 * 20);
            make.width.mas_equalTo(K_ScreenWidth / 360 * 100);
            make.height.mas_equalTo(36);
            make.centerY.mas_equalTo(self.nameLabel.mas_centerY);
            make.bottom.mas_equalTo(self).offset(-14);
        }];
    // 此处的self.nameLabel我在Y轴上给它设置的约束为上和控件的高度
    [self.nameLabel mas_makeConstraints:^(MASConstraintMaker *make) {
            make.width.mas_equalTo(60);
            make.top.mas_equalTo(0);
            make.height.mas_equalTo(36);
            make.left.mas_equalTo(K_ScreenWidth/360*40);
        }];
    

    六、解决在iOS11版本下,继承自scrollview的tableview遮挡后自动偏移的问题

    if (@available(iOS 11.0, *)) {
                _mainTabelView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
            } else {
                // Fallback on earlier versions
            }
    

    相关文章

      网友评论

          本文标题:UITabelView

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