当UIScrollView滚动时,NSURLRequest不会触发

jow*_*wie 13 objective-c uiscrollview nsurlrequest ipad ios

我有一个问题,我试图在用户移动UIScrollView时后台加载声音文件...问题是我使用NSURLRequest所以我可以在后台加载,但即便如此它拒绝实际加载直到UIScrollView已停止滚动.:(

我能做些什么吗?

谢谢!

tid*_*all 27

NSURLRequest仅管理的要求,而不是实际的连接.

触摸事件(如滚动)会将运行循环放入NSEventTrackingRunLoopMode.默认情况下,a NSURLConnection计划执行NSDefaultRunLoopMode.因此,在进入时NSEventTrackingRunLoopMode,NSDefaultRunLoopMode被阻止.

好消息是你可以安排其他模式NSURLConnection,例如NSRunLoopCommonModes.

connection = [[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:NO];
[connection scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSRunLoopCommonModes];
[connection start];
Run Code Online (Sandbox Code Playgroud)