当互联网连接断开连接时,我试图在15秒内断开或停止加载URL请求。我尝试使用NSURLRequest中的setTimeoutInterval,但这不起作用。谁能知道如何解决这个问题?
答案 0 :(得分:14)
以下是您的示例:
NSURLRequest *lRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:link]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:20.0];
这里有20秒的超时间隔。
答案 1 :(得分:2)
根据我的经验,Oleg的这个例子是行不通的。我想你和我一样面临着同样的问题,也就是我在网上看到的,也许这个解决方案对你也有用。
使用NSTimer,将计时器设置为从webViewDidStartLoad委托方法开始,然后确保在webViewDidFinishLoad和webViewDidStarLoad方法中有计数器来检查webView是否已加载(这是一个丑陋的黑客,但除非你使用用于检查页面中元素数量的javascript,实际上无法知道将调用这两种方法的次数)。
执行此操作后,请在计时器到达时间后检查您正在运行的方法的计数器,这应该有效。
NSTimer代码在这里 - > http://www.iphonedevsdk.com/forum/iphone-sdk-development/14403-nstimer-examples.html
希望这会有所帮助,它对我有用。虽然我知道存在缺陷,但它对我来说很有用,因为我正在加载一个首先应该是轻量级的闪屏。我仍然在寻找解决方案,如果我有其他选择,我会在这里发布编辑。
非常欢迎反馈!