UITabelView

一、去掉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)