首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AFHTTPRequestOperation数据块UI

AFHTTPRequestOperation数据块UI
EN

Stack Overflow用户
提问于 2012-04-19 01:59:56
回答 1查看 854关注 0票数 0

我有以下代码,可以从php脚本中获取一些数据。我发现它阻塞了界面,所以进度指示器不会旋转。有没有一种简单的方法可以把它发送到后台,这样UI就可以自由地做它需要的任何事情?我的印象是使用块就可以做到这一点,但我显然错了(一步一步地学习Obj-C!)

谢谢!

代码语言:javascript
复制
NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:
                        self.user.username, @"username",
                        self.user.password, @"password",
                        nil];
AFHTTPClient *client = [[AFHTTPClient alloc] initWithBaseURL:
                        [NSURL URLWithString:@"http://domain.com"]];

    // Show animated progress indicator, etc    
[self enbleLoadingState:YES];

[client postPath:@"/en/api/login" parameters:params success:^(AFHTTPRequestOperation *operation, id response) {
    [self enbleLoadingState:NO];
    // Do stuff

} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    [self enbleLoadingState:NO];
    // Show error
}];
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-19 23:44:00

这段代码应该可以工作,请求在后台加载。问题一定出在别的地方。我不知道主线程上的时间花在哪里了,也许是在enbleLoadingState:上?启动请求的方法应该立即返回。通过在方法的开头和结尾以及success块内部插入NSLog来测试这一点。success块中的NSLog应该最后打印出来。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10215185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档