我正在尝试解决我的应用程序中的最后一个问题,这对我来说是最大的。
我在屏幕截图中显示了这个 downloadView,我通过 NSURLConnection 从 Web 服务器异步下载文件/文档。
所有视图组件都可以完美运行(下载按钮、progressBarView、abortButton)等等。
当下载开始时,进度条会增加,我可以通过将连接设置为 nil 并将数据长度设置为零来完美地中止下载。
:: 我的挑战性问题是 ::
当在后台处理下载时,我单击“返回”按钮并导航回 firstView,然后导航回此 downloadView,我失去了对下载的访问权限。我不能再中止它或监视它。进度条重置为零。但是,我仍然可以看到下载正在通过 NSLog for progressBar.progress 运行。
我认为这个问题与保留视图和访问线程以及在按下“返回”按钮时保持 downladView 活动有关。
很抱歉写得太多,但我正在努力澄清这个问题。
这是显示我如何下载文件的基本代码。
-(IBAction)downloadButton:(id)sender{
urlLink= @"http://www.example.com/text.pdf";
NSURLRequest *request= [NSURLRequest requestWithURL:[NSURL URLWithString:urlLink] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:10.0];
connectionbook = [[NSURLConnection alloc] initWithRequest:request delegate:self];
}
// using the regular delegate connectino methods
-(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response{}
-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{}
-(void)connectionDidFinishLoading:(NSURLConnection *)connection{}