【问题标题】:numberOfRowsInSection being called too many times in iOS8?在 iOS8 中 numberOfRowsInSection 被调用了太多次?
【发布时间】:2014-11-02 10:06:16
【问题描述】:

好像自从iOS 8出来后,在显示已有的UITableView时,总是会调用numberOfRowsInSection函数。

在 iOS 8 上,当从标签栏控制器切换标签时,其中一个包含表格视图, - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 即使没有调用任何表函数,也总是会被调用。

在 iOS 7 上,当从标签栏控制器切换标签时,其中一个包含表格视图, - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 没有被调用。

有人知道为什么在 ios8 中会出现这种行为吗?解决它?

【问题讨论】:

  • 为什么会出现这个问题?

标签: ios uitableview swift ios8


【解决方案1】:

我有同样的问题,当切换标签表视图调用一些代表时,我用“时间探查器”进行了测试,发现如果你的 viewController 在 ios 8 中添加了一个表视图,它会自动调用 [UITableView didMoveToWindow] (私有方法)在 ios 8 中。然后整个事情发生了,它调用表委托并且性能下降。我正在尝试找出如何停止这些电话,如果有人发现请更新..

这是我在标签之间切换后函数调用堆栈的屏幕截图 -

http://www.imageno.com/77dx9lss0qlmpic.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-11
    • 2012-09-07
    • 1970-01-01
    • 1970-01-01
    • 2012-02-27
    • 1970-01-01
    • 1970-01-01
    • 2018-02-09
    相关资源
    最近更新 更多