美文网首页
UITableView 插入行

UITableView 插入行

作者: _风雨 | 来源:发表于2021-10-12 16:43 被阅读0次

顶部插入, 且保持 偏移不变

{
                    self.dataArray.insert(contentsOf: results, at: 0)
                    
                    self.listView.reloadData()
                    
                    if results.count > 0 {
                        self.listView.scrollToRow(at: IndexPath(row: results.count - 1, section: 0), at: .top, animated: false)
                    }
                }

底部插入行

func insertMessage(_ message: EMMessage) {
        let oldDataCount = dataArray.count
        
        let resultModels = formatMessage([message])
        self.dataArray.append(contentsOf: resultModels)
        
        var indexPaths = [IndexPath]()
        for index in oldDataCount..<self.dataArray.count {
            indexPaths.append(IndexPath(row: index, section: 0))
        }
        
        listView.performBatchUpdates {
            self.listView.insertRows(at: indexPaths, with: .none)
        } completion: { _ in
            self.scrollToBottom()
        }
    }

相关文章

网友评论

      本文标题:UITableView 插入行

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