我目前正在做一个SwiftUI项目,遇到了一个场景,我需要在UIKit中实现类似于deployeReusableCell方法的东西。在UIKit中,我通常会重用单元格来优化UICollectionView或UICollectionView中的内存使用。
在SwiftUI中是否有一个等效或替代的方法来以类似的方式重用视图或组件?我搜索了文档和论坛,但还没有找到一个明确的解决方案。
以下是我试图实现的简化版本:
// Example in UIKit
let cell = tableView.dequeueReusableCell(withIdentifier: "MyCell", for: indexPath) as! MyCustomCell
// Do something with the cell...
// What would be the equivalent in SwiftUI?
// Is there a mechanism for reusing views efficiently?
字符串
任何指导或例子将不胜感激。提前感谢!
2条答案
按热度按时间zed5wv101#
SwiftUI的List和Grid中的任何相同类型的视图都会自动进行单元格删除,这分别相当于UIKit的
UITableView
和UICollectionView
字符串
jk9hmnmh2#
与SwiftUI等效的TableView是一个
List
。您还可以在List中使用ForEach
来表示一种cell
。只需将任何View
放在ForEach内容块中,它就是一个“单元格”外观:字符串
的数据