Objective c 在异步请求中设置NSTimer
在我的应用程序中,我正在从服务器获取一些数据。我需要刷新我的数据。 我在后台使用一个异步请求来完成它 我正在做的(我不确定它是否正确和/或建议做的)是: 我想做的是等待我的数据被下载和处理,然后在刷新它们之前等待几次。但这段代码并不像我预期的那样工作 我的错在哪里Objective c 在异步请求中设置NSTimer,objective-c,asynchronous,nstimer,Objective C,Asynchronous,Nstimer,在我的应用程序中,我正在从服务器获取一些数据。我需要刷新我的数据。 我在后台使用一个异步请求来完成它 我正在做的(我不确定它是否正确和/或建议做的)是: 我想做的是等待我的数据被下载和处理,然后在刷新它们之前等待几次。但这段代码并不像我预期的那样工作 我的错在哪里 谢谢你的帮助。我被召到这里来,作为sacompositionoperations的作者 虽然sacompositionoperations中引用的每个字符串都是正确的(哈哈),但sacompositionoperations与这个问题
谢谢你的帮助。我被召到这里来,作为sacompositionoperations的作者 虽然sacompositionoperations中引用的每个字符串都是正确的(哈哈),但sacompositionoperations与这个问题完全无关。即使是这样,它看起来就像是在使用重炮来完成像在后台加载数据这样的简单任务 @zbMax,我发现您对iOS开发完全陌生,因此我建议您: 不要使用
-[NSURLConnection asynchronousRequest:…]
在后台获取数据-仔细阅读文档,立即开始使用它,而不是苹果默认的NSURLConnection方法AFNetworking
是一个顶级库,整个iOS开发世界都使用它来处理网络内容
此外,甚至不要像您描述的那样考虑使用
NSTimer
——实际上根本不要使用它。请仔细阅读如何使用AFNetworking执行异步请求。loadData后的冒号是什么意思-(void)loadData:
我不确定它是否编译,但它可能会将选择器从loadData
更改为loadData:
。而interval
的具体内容是什么。您尝试登录了吗?对不起,我复制代码时出错了,loadData
之后没有列interval
是在我的代码中设置的一个值(例如20.0,但我在这里用interval
替换了它,因为问题不是从这里来的)谢谢您的链接。我发现了许多对我的项目有用的东西。顺便说一句,我没有发现任何关于加载webview的信息(如果这个框架可以更有效的话),你没有在你的问题中以任何方式提到加载webview,这就是为什么我回答提供给你一个一般默认值的原因。关于加载web视图-一般回答:“视情况而定”。使用它最简单也是最正确的方法是只使用它的-[UIWebView loadRequest:]方法,即通过向它提供指向您可能需要的源URL的NSURLRequest
对象。抱歉,我之前的评论令人困惑。我的意思是:你的推荐人很有帮助,解决了我的问题。我还发现了一些有用的东西(比如为tableviewcell加载图像),我正在寻找加载网页的函数,如果这些函数存在于这个库中的话。但这是另一个问题…我不想误导您,最好自己检查一下AFNetworking,但我不记得有任何关于与UIWebView交互的API。祝你好运
-(void)loadData
{
//setting url request
[NSURLConnection sendAsynchronousRequest:urlRequest
queue:[[NSOperationQueue alloc] init]
completionHandler:^(NSURLResponse *resp, NSData *data, NSError *err)
{
//handling data
myTimer = [NSTimer scheduledTimerWithTimeInterval:interval
target:self
selector:@selector(loadData)
userInfo:nil repeats:NO];
}];