首页 > 求助:通过 AFNetworking 网络请求存储的数组在viewDidLoad中为空?

求助:通过 AFNetworking 网络请求存储的数组在viewDidLoad中为空?

 - (void)viewDidLoad {
                
                //请求数据并存储
                [self postData];
                
                //问题在这,我想在 viewDidLoad 中使用 NameArray 的数据,可是在这里打印为空
                NSLog(@"%@",NameArray);
                
                
                
     }
            
            
 -(void)postData{
                
                
                NameArray = [[NSMutableArray alloc]init];//初始化存储数据的数组
                
                //这里是网络请求
                [managerCar POST:urlStrCar parameters:paramsCar success:^(AFHTTPRequestOperation *operation, id responseObject) {
                    
                    //将请求得到的数据存在 NameArray 中
                    [NameArray addObject:data];
                    //这里已经请求成功,并且打印 NameArray 也有值了,(可是在 viewDidLoad 中打印为空)
                    NSLog(@"%@", NameArray);
                    
                } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
                    
                }];
                
 }

先谢谢啦。。。


[self postData]是网络请求,网络请求是异步的,数据返回时间是不确定的。
所以你在执行[self postData]后立即使用NameArray时,其实你的网络请求还没有得到数据响应,也就是空啦。

【热门文章】
【热门文章】