Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 视图将显示/视图显示多次_Iphone_Objective C_Ios - Fatal编程技术网

Iphone 视图将显示/视图显示多次

Iphone 视图将显示/视图显示多次,iphone,objective-c,ios,Iphone,Objective C,Ios,我正在使用,我想在每次用户返回选项卡时执行一个请求,从Web服务中提取新的内容 我无法将请求代码放在viewDidLoad中,因为它在返回选项卡时未被激发。话虽如此,我注意到当返回到选项卡视图控制器时,ViewWillAspect/ViewDidAspect被多次调用 如果我将请求代码放在那里,它会被多次激发,导致Web服务被不必要地ping 我怎样才能解决这个问题?我应该使用哪种方法来执行HTTP请求调用,以便每次查看执行一次?您可以在提交异步下载之前尝试设置/检查downloadInProg

我正在使用,我想在每次用户返回选项卡时执行一个请求,从Web服务中提取新的内容

我无法将请求代码放在viewDidLoad中,因为它在返回选项卡时未被激发。话虽如此,我注意到当返回到选项卡视图控制器时,ViewWillAspect/ViewDidAspect被多次调用

如果我将请求代码放在那里,它会被多次激发,导致Web服务被不必要地ping


我怎样才能解决这个问题?我应该使用哪种方法来执行HTTP请求调用,以便每次查看执行一次?

您可以在提交异步下载之前尝试设置/检查
downloadInProgress
标志,然后在请求完成时重置该标志


如果您使用的是类似于ASIHTTPRequest的东西,则在请求完成或失败时调用委托方法,此时您可以重置标志。它允许您单独标记每个请求,以便跟踪每个请求的成功或失败,这样就不会限制您一次运行一个后台请求。

结果是,控制器代码中将显示对视图的额外调用。如果您对这些更改感兴趣,Git项目的“问题”部分会有一个类似的更新。

ViewWillDisplay通常只调用一次,这就是我进行类似更新的地方。也许你应该弄清楚为什么它会被多次调用。这也是我现在认为最好的方法