2010-06-24 93 views
2

有沒有辦法異步加載iphone中的本地文件?我加載uiimages使用這個我的UITableView:iphone異步文件加載?

NSData *imageData = [[NSData alloc] initWithContentsOfFile:fileName]; 
UIImage *cachedImage = [[[UIImage alloc] initWithData:imageData] autorelease]; 

,但它是緩慢的,因爲主線程被鎖定或東西,直到完成的NSData加載文件和UI變得反應遲鈍。有沒有像NSURLConnection但本地文件?所以我可以在不凍結UI的情況下加載文件,並且在加載完成後,某些處理程序會發送通知或類似的內容。

回答

3

您可以使用NSOperationQueue和NSInvocationOperation來調用「加載」過程。然後,從加載過程中,只需使用'performSelectorOnMainThread'來更新。有關詳細示例,請參見:http://gist.github.com/375559

+0

謝謝,我會試試看 – Mike 2010-06-24 15:47:25