Iphone 为什么在创建行后加载UITableView数据源?
我有一个有趣的问题 我正在异步加载UITableView。我正在尝试获得计数:Iphone 为什么在创建行后加载UITableView数据源?,iphone,objective-c,cocoa-touch,uitableview,nsurlconnection,Iphone,Objective C,Cocoa Touch,Uitableview,Nsurlconnection,我有一个有趣的问题 我正在异步加载UITableView。我正在尝试获得计数: prefs = [NSUserDefaults standardUserDefaults]; NSInteger dmCount = [prefs integerForKey:@"dmCount"]; NSLog(@"items count %d", [self.items count]); if (abs([self.items count] - dmCount) > 0) { [prefs
prefs = [NSUserDefaults standardUserDefaults];
NSInteger dmCount = [prefs integerForKey:@"dmCount"];
NSLog(@"items count %d", [self.items count]);
if (abs([self.items count] - dmCount) > 0) {
[prefs setInteger:abs([self.items count] - dmCount)forKey:@"dmCount"];
}
NSLog(@"%d MESSAGES",abs([self.items count] - dmCount));
但是,执行此代码时,[self.items count]返回0,然后返回4(实际值)。我猜在创建表时,我的数据源是0,一旦加载,它就会变成4。如何确保获得正确的计数?您是否考虑过在items属性上使用键值观察?我应该在didFinishConnection委托方法中计算项目大小这在您的代码中是什么?什么是self.items?它是如何设置的?这段代码很难猜测到底发生了什么。这段代码在viewwillbeen中被调用。self.items是一个NSMutableArray,它是我的数据源。