我在顶部有一个UISegmentedControl,并且有UITableView。我想根据所选索引刷新表视图。因此,最好有两个不同的UITableViews,然后仅隐藏一个或另一个,或者隐藏一个tableView,然后在索引更改后重新加载它?
这是更好的方法。1个tableView并在索引更改后仅(更新数据)重新加载它。
当重新加载tableView时,将调用tableView(_:cellForRowAt:)
,并使用著名的dequeueReusableCell(withIdentifier:)
。通过简单地重用现有的和可用的单元格,可以提高重新加载tableView项的性能。当您有两个tableViews时,您分配的内存要比仅分配一个更多。根据您要放在桌上的物品数量的不同,我最终并没有发现太大的不同。我个人认为,只有一个tableView的选项更实用,而且通常使用更多。
仅使用一个tableView并遵循此:
1-用segmentControll的两个状态进行枚举
2-创建2个不同的tableViewCell
3-in cellforRow使switch语句和双端队列取决于每个switch情况