簡體   English   中英

UITableViewCell-prepareForReuse和dequeueReusableCellWithIdentifier

[英]UITableViewCell - prepareForReuse and dequeueReusableCellWithIdentifier

GitHub項目中查看本文 定制單元格(JKCallbacksTableViewCell類)的prepareForReuse方法將通知發送到table(RootViewController類), tableViewCellIsPreparingForReuse方法會觀察到該通知。 此方法重置關聯密鑰和單元格的圖像視圖。

那么,為什么在從表的dequeueReusableCellWithIdentifier方法獲取非零單元格之后,作者為什么更希望通過通知發送該消息呢?

根據UITableViewCell文檔 ,prepareForReuse在dequeueReusableCellWithIdentifier之前調用。

如果UITableViewCell對象是可重用的(即,它具有重用標識符),則在從UITableView方法dequeueReusableCellWithIdentifier:返回對象之前,將調用此方法。

我已經測試過,當dequeueReusableCellWithIdentifier返回一個非零值時,它與對prepareForReuse的調用結合在一起。

作者在JKCallbacksTableViewCell.h中評論了應用程序邏輯分離,但我認為這有點過頭了; 通過異步調度優化性能,但發送那些緩慢的通知以重置一些屬性...還是我缺少有關GCD的信息?

大多數編程問題都有幾乎無限數量的解決方案。 除了通知松散耦合之外,我沒有其他選擇通知的特殊原因。

關於你提到的有關通知的速度評論:這使得應用程序緩慢的加載圖像的東西,所以我們正在努力,以優化 通知的速度不夠慢,無法以其他方式改變應用程序的使用,因此,出於純粹的性能原因,不建議使用其他功能。

就是說,它在GitHub中,因此隨時發送不使用通知的請求請求。 如果我更喜歡它,我會使用它。

暫無
暫無

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

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