2014-03-27 56 views
0

我正在開發一個應用程序,其中幾乎所有東西都是collectionViewsimages在後臺獲取json web服務的對象ios

當應用程序啓動時,您可以看到帶有圖片的TimeLine,每個cell都有一個用戶名,他上傳了圖片,圖片的城市和圖片。

好吧,如果你tap城市名稱Label(在時間軸cell),你可以看到(在collection view)的那個城市的所有圖像的城市概況,城市和一些細節的分數。如果我在任何圖片上都有tap,則會啓動一個新照片庫ViewController,因爲我可以使用所有圖片的NSArrayscroll查看城市的所有圖片。

當我tap的用戶名label(在時間軸cell)相同happens,我下載在用戶簡檔中的用戶信息和用戶圖像的array和顯示。

好吧,當我按時間軸cell的一個畫面的問題就來了,那張照片推出圖片集錦ViewController直接(不推出的城市或用戶配置文件,我下載的圖片的陣列),所以我只能有一個NSArray一張照片。

所以,我的問題是

* 我怎樣才能在後臺獲取用戶的圖像array,而我的圖片顯示的? *

我以爲我可以調用User class類方法稱爲getUserPictureArray並有撥打電話到服務器,獲取這些圖像,並用delegate歸還。但我不認爲這不是最好的方式。

有什麼想法?謝謝

+1

你看過AFNetworking https://github.com/AFNetworking/AFNetworking http://www.raywenderlich.com/59255/afnetworking-2-0-tutorial – Flexicoder

+0

我很困惑。您清楚知道如何從您的服務器檢索媒體。你爲什麼不推薦你的畫廊?此外,您的問題的標題提到後臺提取。因此,如果您尚未使用它,我將藉此機會推薦Grand Central Dispatch(https://developer.apple.com/library/ios/documentation/Performance/Reference/GCD_libdispatch_Ref/Reference/reference.html) 。 – geraldWilliam

+0

我目前使用AFNetworking,所以我已經知道它。我只是想在顯示那張圖片的同時下載所有的用戶圖片)我想要做的就是獲取這個數據而不鎖定主線程。有大量圖片的用戶 – croigsalvador

回答

0

,以便在評論傢伙說......你getUserPictureArray方法使用AFNetworkingGCD

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ 
    [[AFHTTPRequestOperationManager manager] GET:url parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) { 
    // Do whatever you want with data in responseObject 
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) { 
    // Handle error 
    }]; 
}); 

如果你做這樣的事情會在後臺下載數據和success塊可以保存把照片發給NSArray或者做任何你想要的東西。但請記住明智地做,並且在空的時候不要參考NSArray

+0

是的,那就是重點,我不能使用這個NSArray,直到我得到它,所以我鎖定主線程 – croigsalvador

+0

因此,你必須觀察並通知'NSArray'是否充滿了這些圖像。 – cojoj