搜尋

首頁  >  問答  >  主體

ios - 如何刷新tableViewCell上新增的一個View(不是刷新整個cell)

問題如題目所示。

場景:目前tableviewcell是由三個view拼接而成的,加在cell.contentView上。刷新的時候我只需要刷新其中一個cell的一個view裡的內容。
但是執行刷新cell方法,是三個view是一起刷新的,導致資料不變的view會閃一下。
請問各位這種場景如何優化?

曾经蜡笔没有小新曾经蜡笔没有小新2713 天前1116

全部回覆(3)我來回復

  • 怪我咯

    怪我咯2017-06-15 09:25:52

    如果使用self.tableView reloadRowsAtIndexPaths: withRowAnimation:刷新會閃,考慮是否是 佈局改變了,檢測下layoutSubviews,或者重新創建了視圖此視圖的開銷比較大,優化FPSFP

    回覆
    0
  • 某草草

    某草草2017-06-15 09:25:52

    就是呼叫的reloadRowsAtIndexPaths實作刷新的。刷新的時候呼叫layoutSubviews,佈局沒有改變的。我是在初始的時候設定視圖佈局,刷新的是傳入model改變控制項的值。
    做了非同步渲染最佳化,每個cell高度是固定的。

    回覆
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-06-15 09:25:52

    你得透過資料來源來控制呀,不要單獨從view上去考慮,data關係到cell的重用問題

    回覆
    0
  • 取消回覆