重新加载单元格时,Tableview单元格闪烁并更改位置

时间:2018-09-18 18:50:04

标签: ios swift uitableview

在表格视图单元格中的应用程序中,当我单击更多按钮时,我正在使用更多按钮来加载更多内容。所以在单击更多按钮时,我正在重新加载该特定单元格。但是当我重新加载该单元格时,该单元格会向上移动,并且会发生一些闪烁效果。我希望它像instagram一样平滑,当我们点击更多按钮时,它只是增加了单元格的高度而没有任何位置更改。

这是我的代码 :

@objc func btnMorePressed(sender : UIButton) {
    let indexPath = NSIndexPath(row: sender.tag, section: 0)
    let cell : FeedTableViewCell = (tblQuote.cellForRow(at: indexPath as IndexPath) as? FeedTableViewCell)!
    cell.btnMore.isHidden = true
    cell.lblCaption.numberOfLines = 0

    quoteArray[indexPath.row].numberOfLines = 3
    tblQuote.reloadRows(at: [indexPath as IndexPath], with: .none)
     tblQuote.beginUpdates()
    tblQuote.endUpdates()
}


 func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
    return UITableViewAutomaticDimension
}

1 个答案:

答案 0 :(得分:0)

将顺序更改为:

tblQuote.beginUpdates()
tblQuote.reloadRows(at: [indexPath as IndexPath], with: .automatic)
tblQuote.endUpdates()