关于TableViewCell的一些细知识点

cell 分割线左对齐

-(void)viewDidLayoutSubviews {
    if ([self.mytableview respondsToSelector:@selector(setSeparatorInset:)]) {
        [self.mytableview setSeparatorInset:UIEdgeInsetsZero];
    }
    if ([self.mytableview respondsToSelector:@selector(setLayoutMargins:)])  {
        [self.mytableview setLayoutMargins:UIEdgeInsetsZero];
    }
}
-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPat{
    if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {
        [cell setLayoutMargins:UIEdgeInsetsZero];
    }
    if ([cell respondsToSelector:@selector(setSeparatorInset:)]){
        [cell setSeparatorInset:UIEdgeInsetsZero];
    }
} 

获取cell



 UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];

刷新某一行row数据


NSIndexPath *indexPath=[NSIndexPath indexPathForRow:3 inSection:0];
[tableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:indexPath,nil] withRowAnimation:UITableViewRowAnimationNone];

刷新某一组section数据

NSIndexPath *indexPath=[NSIndexPath indexPathForRow:3 inSection:0];
[tableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:indexPath,nil] withRowAnimation:UITableViewRowAnimationNone];

设置自定义cell高度



//1.强制布局,让计算机算出当前cell的高度

   [self layoutIfNeeded];  // 强制布局

    
//2.根据有无图片的情况,获取cell高度
   if (status.picture) {
        status.cellHeight = CGRectGetMaxY(self.pictureView.frame) + 10;
     }else {
        status.cellHeight = CGRectGetMaxY(self.contentLabel.frame) + 10;
     }

你可能感兴趣的:(关于TableViewCell的一些细知识点)