UIButton(AFNetworking)擴(kuò)展說明


聲明處:UIButton+AFNetworking.h


概述

這個(gè)分類在UIKit框架的UIButton類添加方法。分類中的方法提供支持從一個(gè)URL異步的加載遠(yuǎn)程圖片和背景圖片。
警告:不支持復(fù)合控件的狀態(tài)值(比如UIControlStateHighlighted或UIControlStateDisabled)。

任務(wù)

獲取圖片下載器

  • + setSharedImageDownloader:
  • + sharedImageDownloader

設(shè)置圖片

  • - setImageForState:withURL:
  • - setImageForState:withURL:placeholderImage:
  • - setImageForState:withURLRequest:placeholderImage:success:failure:

設(shè)置背景圖片

  • - setBackgroundImageForState:withURL:
  • - setBackgroundForState:withURL:placeholderImage:
  • - setBackgroundImageForState:withURLRequest:placeholderImage:success:failure:

取消圖片下載

  • - cancelImageDownloadTaskForState:
  • - cancelBackgroundImageDownloadTaskForState:

類方法

setSharedImageDownloader:

+ (void)setSharedImageDownloader:(AFImageDownloader *)imageDownloader

討論

設(shè)置共享的圖片下載器用來下載圖片。

參數(shù)

imageDownloader

共享圖片下載器用來下載圖片。

聲明處

UIButton+AFNetworking.h

sharedImageDownloader

+ (AFImageDownloader *)sharedImageDownloader

討論

共享圖片下載器用來下載圖片。

聲明處

UIButton+AFNetworking.h

實(shí)例方法

cancelBackgroundImageDownloadTaskForState:

- (void)cancelBackgroundImageDownloadTaskForState:(UIControlState)state

討論

取消任何正在執(zhí)行等待接受指定控制狀態(tài)的背景圖任務(wù),如果有存在的話。

參數(shù)

state

控制狀態(tài)。

聲明處

UIButton+AFNetworking.h

cancelImageDownloadTaskForState:

- (void)cancelImageDownloadTaskForState:(UIControlState)state

討論

取消任何正在執(zhí)行等待接受指定控制狀態(tài)的背景任務(wù),如果有存在的話。

參數(shù)

state

控制狀態(tài)

聲明處

UIButton+AFNetworking.h

setBackgroundImageForState:withURL:

- (void)setBackgroundImageForState:(UIControlState)state withURL:(NSURL *)url

討論

從指定的URL異步下載一張圖片,當(dāng)請(qǐng)求已經(jīng)完成時(shí),設(shè)置這張圖片為背景圖的指定狀態(tài)。任何之前的用來接收背景圖的請(qǐng)求都會(huì)被取消。

如果背景圖已經(jīng)在本地緩存,背景圖將立即設(shè)置,否則指定的占位背景圖將立即設(shè)置,此時(shí)一旦請(qǐng)求完成,遠(yuǎn)程的背景圖將設(shè)置。

參數(shù)

state

控制狀態(tài)

url

背景圖請(qǐng)求的URL。

聲明處

UIButton+AFNetworking.h

setBackgroundImageForState:withURL:placeholderImage:

- (void)setBackgroundImageForState:(UIControlState)state withURL:(NSURL *)url placeholderImage:(nullable UIImage *)placeholderImage

討論

從指定的URL異步下載一張圖片,一旦請(qǐng)求完成,設(shè)置圖片為指定狀態(tài)的背景圖。接受方的之前任何圖片請(qǐng)求將會(huì)被取消。

如果圖片緩存在本地,立即設(shè)置圖片,否者指定的占位圖片將會(huì)立即設(shè)置,同時(shí)一旦請(qǐng)求完成遠(yuǎn)程的圖片會(huì)被設(shè)置。

參數(shù)

state

控制狀態(tài)。

url

背景圖請(qǐng)求使用的URL。

placeholderImage

背景圖被初始設(shè)置,直到背景圖請(qǐng)求完成。如果為nil,按鈕將不會(huì)改變它的背景圖直到背景圖請(qǐng)求完成。

聲明處

UIButton+AFNetworking.h

setBackgroundImageForState:withURLRequest:placeholderImage:success:failure:

- (void)setBackgroundImageForState:(UIControlState)state withURLRequest:(NSURLRequest *)urlRequest placeholderImage:(nullable UIImage *)placeholderImage success:(nullable void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *_Nullable response , UIImage *image ))success failure:(nullable void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *_Nullable response , NSError *error ))failure

討論

從指定的URL異步下載一張圖片,一旦請(qǐng)求完成,設(shè)置圖片為指定狀態(tài)的背景圖。接受方的之前任何圖片請(qǐng)求將會(huì)被取消。

如果圖片緩存在本地,立即設(shè)置圖片,否者指定的占位圖片將會(huì)立即設(shè)置,同時(shí)一旦請(qǐng)求完成遠(yuǎn)程的圖片會(huì)被設(shè)置。

如果指定了成功的塊,在返回之前塊的職責(zé)是設(shè)置按鈕圖片。如果沒有指定成功的塊,提供默認(rèn)方式使用setBackgroundImage:forState:來設(shè)置圖片。

參數(shù)

state

控制狀態(tài)。

urlRequest

圖片請(qǐng)求使用URL請(qǐng)求。

placeholderImage

背景圖被初始設(shè)置,直到背景圖請(qǐng)求完成。如果為nil,按鈕將不會(huì)改變它的背景圖直到背景圖請(qǐng)求完成。

success

一個(gè)塊當(dāng)圖片任務(wù)成功完成時(shí)被執(zhí)行。這個(gè)塊沒有返回值,有3個(gè)參數(shù):客戶端發(fā)送的請(qǐng)求,從服務(wù)器接受到響應(yīng),從請(qǐng)求的響應(yīng)數(shù)據(jù)創(chuàng)建圖片。如果圖片是從緩存返回,響應(yīng)參數(shù)將會(huì)是nil。

failure

一個(gè)塊當(dāng)圖片數(shù)據(jù)任務(wù)不成功完成或成功完成時(shí)被執(zhí)行。這個(gè)塊沒有返回值,有3個(gè)參數(shù):客戶端發(fā)送的請(qǐng)求,從服務(wù)器接收到的響應(yīng),錯(cuò)誤對(duì)象描述網(wǎng)絡(luò)或解析發(fā)生的錯(cuò)誤。

聲明處

UIButton+AFNetworking.h

setImageForState:withURL:

- (void)setImageForState:(UIControlState)state withURL:(NSURL *)url

討論

從指定的URL異步下載一張圖片,一旦請(qǐng)求完成,設(shè)置圖片為指定狀態(tài)的背景圖。接受方的之前任何圖片請(qǐng)求將會(huì)被取消。

如果圖片緩存在本地,立即設(shè)置圖片,否者指定的占位圖片將會(huì)立即設(shè)置,同時(shí)一旦請(qǐng)求完成遠(yuǎn)程的圖片會(huì)被設(shè)置。

參數(shù)

state

控制狀態(tài)。

url

圖片請(qǐng)求使用的

聲明處

UIButton+AFNetWorking.h

setImageForState:withURL:placeholderImage:

- (void)setImageForState:(UIControlState)state withURL:(NSURL *)url placeholderImage:(nullable UIImage *)placeholderImage

討論

從指定的URL異步下載一張圖片,一旦請(qǐng)求完成,設(shè)置圖片為指定狀態(tài)的背景圖。接受方的之前任何圖片請(qǐng)求將會(huì)被取消。

如果圖片緩存在本地,立即設(shè)置圖片,否者指定的占位圖片將會(huì)立即設(shè)置,同時(shí)一旦請(qǐng)求完成遠(yuǎn)程的圖片會(huì)被設(shè)置。

參數(shù)

state

控制狀態(tài)。

url

圖片請(qǐng)求使用的

placeholderImage

背景圖被初始設(shè)置,直到背景圖請(qǐng)求完成。如果為nil,按鈕將不會(huì)改變它的背景圖直到背景圖請(qǐng)求完成。

聲明處

UIButton+AFNetworking.h

setImageForState:withURLRequest:placeholderImage:success:failure:

- (void)setImageForState:(UIControlState)state withURLRequest:(NSURLRequest *)urlRequest placeholderImage:(nullable UIImage *)placeholderImage success:(nullable void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *_Nullable response , UIImage *image ))success failure:(nullable void ( ^ ) ( NSURLRequest *request , NSHTTPURLResponse *_Nullable response , NSError *error ))failure

討論

從指定的URL異步下載一張圖片,一旦請(qǐng)求完成,設(shè)置圖片為指定狀態(tài)的背景圖。接受方的之前任何圖片請(qǐng)求將會(huì)被取消。

如果圖片緩存在本地,立即設(shè)置圖片,否者指定的占位圖片將會(huì)立即設(shè)置,同時(shí)一旦請(qǐng)求完成遠(yuǎn)程的圖片會(huì)被設(shè)置。

如果指定一個(gè)成功的塊,在返回之前這個(gè)塊的職責(zé)是設(shè)置按鈕的圖片。如果沒有指定一個(gè)成功的塊,提供設(shè)置圖片的默認(rèn)方式setImage:forState。

參數(shù)

state

控制狀態(tài)。

urlRequest

圖片請(qǐng)求使用的URL請(qǐng)求。

placeholderImage

背景圖被初始設(shè)置,直到背景圖請(qǐng)求完成。如果為nil,按鈕將不會(huì)改變它的背景圖直到背景圖請(qǐng)求完成。

success

一個(gè)塊當(dāng)圖片任務(wù)成功完成時(shí)被執(zhí)行。這個(gè)塊沒有返回值,有3個(gè)參數(shù):客戶端發(fā)送的請(qǐng)求,從服務(wù)器接受到響應(yīng),從請(qǐng)求的響應(yīng)數(shù)據(jù)創(chuàng)建圖片。如果圖片是從緩存返回,響應(yīng)參數(shù)將會(huì)是nil。

failure

一個(gè)塊當(dāng)圖片數(shù)據(jù)任務(wù)不成功完成或成功完成時(shí)被執(zhí)行。這個(gè)塊沒有返回值,有3個(gè)參數(shù):客戶端發(fā)送的請(qǐng)求,從服務(wù)器接收到的響應(yīng),錯(cuò)誤對(duì)象描述網(wǎng)絡(luò)或解析發(fā)生的錯(cuò)誤。

聲明處

UIButton+AFNetworking.h

// END

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容