想象一下,我在tableView中有200行,如果我调用reload两次会发生什么 - 这意味着我调用了我的tableview重装,重装第100行时,我再次调用reload,现在会发生什么?当你调用UItableview的重装两次时会发生什么
0
A
回答
1
你的问题不会发生。所有重新加载都在主线程上完成。在重新加载完成之前,reloadData
的调用不会返回。因此,在上次重新加载仍在运行时,您无法再次调用它。这不是问题。
而你的问题也意味着如何加载表视图的误解。当您拨打reloadData
时,所有200行将不会“重新加载”。表视图将重新确定所有行的数量和高度,然后它只会实际重新加载可见的行。所以不用担心“重装第100排”。
+0
这个问题更多的是理解这个理论。得到了答案。谢谢 –
相关问题
- 1. 如果你两次调用jQuery $ .getScript('myscript.js')会发生什么?
- 2. 当你同时触摸两个按钮时会发生什么
- 3. 如果/当DllImport被多次调用时会发生什么?
- 4. 当你停止VS调试器时会发生什么?
- 5. 当redis重载时会发生什么?
- 6. 当crontabs重叠时会发生什么?
- 7. 当你不加入你的主题时会发生什么?
- 8. 当我开始两次警报时会发生什么?
- 9. 当你在同一个对象上使用“new”两次会发生什么?
- 10. 当你比较蟒蛇两个字符串会发生什么
- 11. 当你使用unbind()失败时会发生什么?
- 12. 当你调用Rails中的关系/集合时会发生什么?
- 13. 当你调用一个线程的中断()时会发生什么?
- 14. 当调用ajax调用时会发生什么?
- 15. Erlang:当你f()中的一个Pid时会发生什么?
- 16. 当我调用两次相同的方法时发生了什么
- 17. 当我重新安装我的android应用程序时会发生什么
- 18. 在jQuery中,当你有两个.children()函数时会发生什么?
- 19. 当我调用DLL中的函数时会发生什么
- 20. 当你rm文件时会发生什么?
- 21. 当你运行一个程序时会发生什么?
- 22. 当你从C启动A到B时会发生什么?
- 23. 当你逻辑不是浮动时会发生什么?
- 24. 当你在浏览器中输入URL时会发生什么
- 25. 当你JAR而不是WAR时,会发生什么情况
- 26. 当你增加数组时,会发生什么。 {A [in.nextInt()] ++;}
- 27. 当你在unix shell上键入时会发生什么
- 28. 当我下载JDK时,我的预装JRE会发生什么?
- 29. 当我安装RVM时,现有的gem会发生什么?
- 30. 当condition_variable :: wait()被调用时,解锁unique_lock会发生什么?
它只会显示你的数据源传递了什么 - 当你调用reload时,你的tableview会把可见区域放到一开始,并再次询问每个可见单元的数据源。 –
想象一下,我有一个沉重的表格视图,有二十个可见的单元格,在这个状态下,当第10个单元格重新加载时,我再次调用重新加载,那么剩下的10个单独重新加载还是整个20个单元格将会是? –
我很怀疑你可以将这么多东西包装进一个仍然会滚动的表格视图中,这会成为一个问题。正如rmaddy所说的那样,无论如何你都无法重新加载tableview,因为主线程(你需要调用reload)无论如何都被阻塞了。 –