2016-02-04 82 views
0

我有一個具有tableView的ViewController。該tableView填充自定義單元格。每個自定義單元格都有一個顯示圖像的collectionView(假設每個新聞塊都有圖像時的新聞提要結構)。用包含CollectionView的自定義單元格重新加載單個TableViewCell

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

有沒有其他方法可以刷新包含CollectionView的Custom Cell?

回答

0

我發現對自定義單元格有幫助的東西是創建一個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 
} 

}

然後你可以在任何索引路徑的單元格,設置新的信息。

希望這可以幫助你。

+0

感謝您的回覆。你有沒有這個答案的Objective-C版本? – ekashking

相關問題