簡體   English   中英

我可以通過標簽獲得UICollectionViewCell嗎?

[英]Can I get a UICollectionViewCell by tag?

我有一些NSNotifications正在進行,我想根據與它們相關的標簽更新我的單元格。

這可能嗎?

為了詳細說明,我在UITableViewCell中有一個UILabel和一個UIProgressView,如果通知對象包含匹配的標記,我將要更新。

我在后台同步數據,每次處理一大塊數據時,我發出一個NSNotification。

我希望UICollectionView單元格能夠反映最新狀態。

為了實現這一點,我想通過標簽獲取UITableViewCell,然后使用新數據更新UILabel和UIProgressView。

  1. 不要通過標記獲取單元格,通過indexPath獲取它們
  2. 不要通過indexPath獲取單元indexPath
  3. 不要得到它們

(1)您可以按標記獲取視圖,但每次繪制視圖標記以匹配其索引路徑時,您都需要更新視圖標記。 所以(2)索引路徑同樣好。 但是(3)它們也不好,因為直接調整單元格不是我們在MVC-land中的方式

這里正確的計划是更新你的模型(用MVC術語,更具體地說是集合視圖數據源數組)來反映世界的變化,然后告訴你的集合視圖它已經過時了( reloadData是大錘子, reloadItemsAtIndexPaths:是手術刀)。

這意味着您的模型必須包含反映下載進度狀態的數據(如浮點數),可用作進度條參數,並且您的cellForItem ...方法必須檢查此值並修改單元格的進度視圖。

你不能這樣做,因為單元格每次都會重復使用。如果你包裝標簽,這不僅僅是重新加載單元格。如果你想這樣做,你應該更新你的模型,然后重新加載更新的單元格。

暫無
暫無

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

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