调用cellForRowAtIndexPath但没有stacktrace

时间:2017-02-03 05:56:25

标签: ios swift uitableview xcode8 stack-trace

使用Swift 3,正在调用UITableView' func tableView(_ tableView: UITableView, cellForRowAt indexPath: @autoclosure @escaping IndexPath) -> UITableViewCell。我想跟踪谁调用此功能。据我所知,只有在需要显示单元格时才会调用此方法。但是,在stacktrace override internal func tableView(_ tableView: UITableView, numberOfRowsInSection section: @autoclosure @escaping Int) -> Int中没有调用,也没有堆栈跟踪。有人可以建议从哪里开始挖掘?谢谢!

参见随附的屏幕截图 No Stacktrace

2 个答案:

答案 0 :(得分:1)

默认情况下,您只能看到包含调试符号的堆栈跟踪。所以你不会在这里看到很多框架内部。

要查看所有内容,堆栈跟踪窗口底部有一个小按钮,右起第三个位置,这也将启用没有调试符号的方法:

Enable/Disable full stack trace

(实际上,它取决于您的Xcode版本;在旧版本中,有某种滑块可以在堆栈跟踪中显示更多或更少的细节。)

答案 1 :(得分:0)

正如@AndreasOetjen所提到的,这是一种正常行为,因为该方法是从UIKit Framework类调用的。默认情况下,此框架中的调用堆栈是隐藏的,可以通过提到的按钮进行选择。