2011-02-17 148 views
3

在我的應用程序中,我想顯示下載圖像的大小,如label.like,5 KB的2MB。進度條下載圖像

進度條來顯示圖像下載和我想表明的enter image description here總規模正在下載圖像以及下載完成大小(如,5 KB的2 MB)

任何人給我指導去做這個。

對此我該怎麼做。請給我任何示例代碼或教程。

新增信息:

已經我使用ASIHTTP圖書館。有幾個代表methods.In我想給的代碼,找到下載圖像的downloding的總規模和進度哪種方法image.Please給我一個代碼找出兩者的大小(總大小和下載的大小)的圖像。請幫助我.stil我不知道找到大小和哪個委託方法是用來支持。

我真的在這方面掙扎,請任何人指導我這樣做。

+0

我很想知道。棘手的事情是知道下載的進度,因爲大多數內置的API一次性吸收整個資源,並且不提供「進度」委託回調。你總是可以通過下載圖片來完成,但是有哪些API可用? – Bogatyr 2011-02-17 10:06:51

+0

我剛剛添加了一個答案,給你一些提示開始。 – 2011-02-18 02:32:49

+0

據我所知,如果你將`UIProgressView`設置爲`downloadProgressDelegate`,那麼它只會更新'UIProgressView`和' - (void)request:(ASIHTTPRequest *)請求didReceiveBytes:(long long)bytes;`永遠不會調用這個方法,你需要設置`downloadProgressDelegate`爲`self`。讓我知道如果我錯了。或者如果您能夠同時更新標籤和進度視圖,請提供您的答案?任何提示都會很棒。 – Hemang 2013-10-04 07:26:27

回答

2

因爲你需要一些真正代碼開始,這裏有一些提示。

  • ASIHTTPRequest包拖放到您的項目中。
  • 既然你想從網上下載圖片,你只需要處理ASI包中的一個類,即ASIHTTPRequest類。
  • 在開始之前,請仔細閱讀ASIHTTPRequest.h文件。它有你需要的每個接口。
  • 具體來說,要注意這兩種方法,你必須重寫它們才能獲得實時下載統計。

- (void)request:(ASIHTTPRequest *)request incrementDownloadSizeBy:(long long)newLength; 
- (void)request:(ASIHTTPRequest *)request didReceiveBytes:(long long)bytes; 
3

您可以實現自己的下載進度系統,或者避免重新發明輪子是使用優秀ASIHTTPRequest庫,爲您提供了獲取當前下載進度的委託方法的簡單的選擇。它也相當有據可查:http://allseeing-i.com/ASIHTTPRequest/

+0

+1。它在我的項目中完美運行。 – 2011-02-17 10:07:11