簡體   English   中英

使用包含CollectionView的自定義單元格重新加載單個TableViewCell

[英]Reload single TableViewCell with Custom Cell that includes CollectionView

我有一個具有tableView的ViewController。 該tableView填充自定義單元格。 每個自定義單元格都有一個顯示圖像的collectionView(當每個新聞塊都有圖像時,想象新聞提要結構)。

現在,在一個新聞塊中編輯了所有內容之后,我想刷新該tableView的單個單元格(一個新聞塊)。 我嘗試使用[newsList reloadRowsAtIndexPaths: ... ]前提是我確切知道該tableView Cell的indexPath,但是問題是當我向下滾動到下一個tableView Cell並在那里進行編輯后,重新加載了第二Cell來自第一個新聞塊的圖像將顯示在第二個新聞塊中。

還有其他方法可以刷新包含CollectionView的自定義單元格嗎?

我發現對自定義單元格有用的事情是創建一個configureCell方法,並在您向單元格提供新信息時調用該方法。 還要記住的另一件事是在prepareForReuse中取消自定義數據,以幫助解決重用問題。

class TestCell: UICollectionViewCell {
var myInfo: String? {
    didSet {
        if let myInfo = myInfo {
            configureCell(myInfo)
        }
    }
}

var label: UILabel?

//intialize the cell somewhere here

func configureCell(info: String) {
    label?.text = info
}

override func prepareForReuse() {
    super.prepareForReuse()
    label?.text = nil
}

}

然后,您可以在任何索引路徑下獲取單元格並設置新信息。

希望能對您有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM