Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 为什么在创建行后加载UITableView数据源?_Iphone_Objective C_Cocoa Touch_Uitableview_Nsurlconnection - Fatal编程技术网

Iphone 为什么在创建行后加载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

我有一个有趣的问题

我正在异步加载UITableView。我正在尝试获得计数:

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,它是我的数据源。