防止uitableView重新加载
Posted
技术标签:
【中文标题】防止uitableView重新加载【英文标题】:prevent uitableView reloading 【发布时间】:2015-07-11 07:27:44 【问题描述】:我在我的应用程序中使用uitableView
,我想防止在不同情况下重新加载它:
1. 当我提出另一个模态视图时。
2. 行选择发生。
我不会在viewWillAppear
或viewDidAppear
中调用[tableview reloadData]
。有没有办法防止这种重新加载?
【问题讨论】:
确保在返回表格视图时不会调用 viewDidLoad。 你的方法在我看来是错误的。你想达到什么目的? @DharmeshDhorajiya 我试图阻止重新加载! @LalitKumar 我确定它没有被调用! @user623396 当发生行选择时,表格正在重新加载地方。我想防止这种重新加载 【参考方案1】: (无效)重新加载数据; // 从头开始重新加载所有内容。重新显示可见行。因为我们只保留有关可见行的信息,所以这很便宜。如果表格缩小,将调整偏移量 也许可以在更改数据源中做到这一点【讨论】:
【参考方案2】:这是一种“跟踪”函数调用来源的方法:
-
在表格视图的数据源的函数头上添加断点
然后在 debugger 打开的情况下运行您的应用程序,当 breakpoint 指向您的函数头时,单击 Thread 1 的右侧你会看到这个断点是如何被调用/到达的
我希望这对您有所帮助,并希望它是由您(程序员)调用的,因为正如您在我的示例中看到的那样,我只完成了一个 步骤。我怎么知道是6 -[ViewController viewDidLoad]
旁边的蓝色人图标@
【讨论】:
【参考方案3】:感谢您的回复。没有导致此问题的重新加载调用。我正在使用自动布局,并且在 tableview 上设置的约束会导致它在其他视图出现时重新加载并更改位置。解决方案: 当您进行选择 os 演示时,请使用此命令来防止它为约束设置位置:
tableView.translatesAutoresizingMaskIntoConstraints = YES;
【讨论】:
我不知道它是如何工作的。谁能解释一下这是如何防止重新加载 tableview 的?以上是关于防止uitableView重新加载的主要内容,如果未能解决你的问题,请参考以下文章
基于 SegmentedControl 有条件地重新加载 UITableView
应用程序退出 *** -[UITableView _configureCellForDisplay:forIndexPath:] 中的断言失败