results
成功ブロック内の値を変更する方法がわかりませんでした。私は__block
いくつかの投稿が示唆するように使用しますが、results
永遠にゼロです。ブロック内にブレークポイントを設定しJSON
、期待どおりにデータをダウンロードする nil でないことを確認します。
関連する場合は、AFNetworking ライブラリを使用しています。
+(NSArray *)eventsByCityID:(NSString *)cityID startIndex:(NSUInteger)start count:(NSUInteger)count
{
__block NSArray *results = nil;
[[DoubanHTTPClient sharedClient] getPath:@"event/list" parameters:@{@"loc":dataSingleton.cityID} success:^(AFHTTPRequestOperation *operation, id JSON) {
results = [JSON valueForKey:@"events"];
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"download events error: %@ \n\n",error);
}];
return results;
}