簡體   English   中英

從UITableViewCell移除NSNotification Observer

[英]Remove NSNotification Observer from UITableViewCell

我有UIVIewController並且在其中放置了UITableView
UITableView包含單元格,其中單元格包含UICollectionView
每個單元都有自己的collectionView。
現在,我想基於tableview標頭更新不同部分的集合視圖的某些行。
我的表視圖中包含標題和按鈕部分

例如:當我單擊TableView標頭時,我想更新其單元格的collectionView的某些行,因此在這里,我將NSNotification用於collectionView中的callToUpdate行(所有與collectionView相關的東西都放在UITableView cell.m文件中)

但是問題在於,隨着單元格滾動,觀察者不斷添加,而我的發布通知方法稱為多次。

我也為移除觀察者編寫了代碼,但是沒有用。

NotificationCenter會像這只,因為如果你使用的是例如NotificationCenter.default.addObserverviewWillAppear您需要通過清除觀察者NotificationCenter.default.removeObserverviewWillDisAppear 這是Apple對NotificationCenter的使用說明。

由於cellForRowAtIndexPath將被多次調用,因此observer也被多次添加。 更好的建議是使用Delegate 當點擊標題時,您必須調用委托方法來執行所需的操作。

暫無
暫無

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

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