gpt4 book ai didi

objective-c - 从内部循环访问NSMutableArray

转载 作者:行者123 更新时间:2023-12-01 17:44:36 25 4
gpt4 key购买 nike

我在iOS和Objective-C开发方面是个新手,所以我对如何做到这一点感到很挣扎。

首先我的代码:

-(NSMutableArray *)messagesGetList
{

NSMutableArray *messageList = [[NSMutableArray alloc] init];

NSURL *url = [NSURL URLWithString:@"http://xxxx/"];
NSURLRequest *request = [NSURLRequest requestWithURL:url];

AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON)
{
for (NSDictionary * dataDict in JSON) {

[messageList addObject: dataDict];

}
}
failure:^(NSURLRequest *request , NSURLResponse *response , NSError *error , id JSON)
{
NSLog(@"Failed: %@", error);

}];

[operation start];


return messageList;
}

我遇到的问题是,我无法访问for(JSON中的NSDictionary * dataDict)循环中的NSMutableArray * messageList。
即在执行我的循环时,没有任何东西被添加到数组中。

如何从循环中访问阵列?

在此先感谢您的帮助,
菲舍尔

最佳答案

由于+JSONRequestOperationWithRequest:在成功和失败时都需要调用块,因此可以很好地猜测此方法是异步运行的。因此,如果您要立即检查从-messagesGetList返回的数组,则该数组很可能为空。如果在检查之前稍等片刻,可能会发现它已满。

关于objective-c - 从内部循环访问NSMutableArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9930537/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com