更改ViewControllers时出现loadDataSource问题

时间:2014-07-25 08:22:06

标签: ios uiviewcontroller

我的根视图是PSCollectionViewhttps://github.com/ptshih/PSCollectionView)。 在这个类中,我有方法loadDataSource,它从我的Web服务加载数据。

-(void)loadDataSource {
NSLog(@"Load data source");
NSMutableArray *mainListings = [Utils getPosts:selectedCategory begin:@"0" date:@"0"];
self.waterflowViewData  = mainListings;
[self.waterflowView.pullToRefreshView stopAnimating]; //This is when i use pull to refresh to call it.
}

此方法在viewDidLoad的{​​{1}}中调用,如此

rootView

在像这样的[self loadDataSource]; 方法中

pullToRefresh

我的问题是,当我使用__weak ViewController *weakSelf = self; [weakSelf loadDataSource]; 推送ViewController时,正在调用此方法self.navigationController。它仅在我搜索的这两个地方被调用。即使我从第4个loadDataSource返回到第3个ViewController,也可以使用“loadingDataSource”#39;被调用(我用NSLog检查)。为什么会发生这种情况会导致应用程序变慢并且还会利用Web服务资源。

这就是我推送ViewController

的方式
ViewControllers

1 个答案:

答案 0 :(得分:0)

在被调用的函数中放置一个断点(单击行号),然后运行该应用程序。这将为您提供一个很好的堆栈跟踪,其函数调用哪个:

Xcode stack trace

顶部的函数是断点所在的函数,下面的跟踪是每个函数调用,直到你的断点。

灰显的功能是内部功能,而带有深色文本的功能可能是应用程序中的功能。单击它们,Xcode将显示调用下一个函数的代码。

单击输出窗口(控制台)并按Enter(或键入c - > enter)继续调试,直到到达下一个断点。