UIButton(AFNetworking)扩展说明

2017-07-13  本文已影响77人  _阿南_

声明处:UIButton+AFNetworking.h


概述

这个分类在UIKit框架的UIButton类添加方法。分类中的方法提供支持从一个URL异步的加载远程图片和背景图片。
警告:不支持复合控件的状态值(比如UIControlStateHighlighted或UIControlStateDisabled)。

任务

获取图片下载器

设置图片

设置背景图片

取消图片下载

类方法

setSharedImageDownloader:

+ (void)setSharedImageDownloader:(AFImageDownloader *)imageDownloader

讨论

设置共享的图片下载器用来下载图片。

参数

imageDownloader

共享图片下载器用来下载图片。

声明处

UIButton+AFNetworking.h

sharedImageDownloader

+ (AFImageDownloader *)sharedImageDownloader

讨论

共享图片下载器用来下载图片。

声明处

UIButton+AFNetworking.h

实例方法

cancelBackgroundImageDownloadTaskForState:

- (void)cancelBackgroundImageDownloadTaskForState:(UIControlState)state

讨论

取消任何正在执行等待接受指定控制状态的背景图任务,如果有存在的话。

参数

state

控制状态。

声明处

UIButton+AFNetworking.h

cancelImageDownloadTaskForState:

- (void)cancelImageDownloadTaskForState:(UIControlState)state

讨论

取消任何正在执行等待接受指定控制状态的背景任务,如果有存在的话。

参数

state

控制状态

声明处

UIButton+AFNetworking.h

setBackgroundImageForState:withURL:

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

讨论

从指定的URL异步下载一张图片,当请求已经完成时,设置这张图片为背景图的指定状态。任何之前的用来接收背景图的请求都会被取消。

如果背景图已经在本地缓存,背景图将立即设置,否则指定的占位背景图将立即设置,此时一旦请求完成,远程的背景图将设置。

参数

state

控制状态

url

背景图请求的URL。

声明处

UIButton+AFNetworking.h

setBackgroundImageForState:withURL:placeholderImage:

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

讨论

从指定的URL异步下载一张图片,一旦请求完成,设置图片为指定状态的背景图。接受方的之前任何图片请求将会被取消。

如果图片缓存在本地,立即设置图片,否者指定的占位图片将会立即设置,同时一旦请求完成远程的图片会被设置。

参数

state

控制状态。

url

背景图请求使用的URL。

placeholderImage

背景图被初始设置,直到背景图请求完成。如果为nil,按钮将不会改变它的背景图直到背景图请求完成。

声明处

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异步下载一张图片,一旦请求完成,设置图片为指定状态的背景图。接受方的之前任何图片请求将会被取消。

如果图片缓存在本地,立即设置图片,否者指定的占位图片将会立即设置,同时一旦请求完成远程的图片会被设置。

如果指定了成功的块,在返回之前块的职责是设置按钮图片。如果没有指定成功的块,提供默认方式使用setBackgroundImage:forState:来设置图片。

参数

state

控制状态。

urlRequest

图片请求使用URL请求。

placeholderImage

背景图被初始设置,直到背景图请求完成。如果为nil,按钮将不会改变它的背景图直到背景图请求完成。

success

一个块当图片任务成功完成时被执行。这个块没有返回值,有3个参数:客户端发送的请求,从服务器接受到响应,从请求的响应数据创建图片。如果图片是从缓存返回,响应参数将会是nil。

failure

一个块当图片数据任务不成功完成或成功完成时被执行。这个块没有返回值,有3个参数:客户端发送的请求,从服务器接收到的响应,错误对象描述网络或解析发生的错误。

声明处

UIButton+AFNetworking.h

setImageForState:withURL:

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

讨论

从指定的URL异步下载一张图片,一旦请求完成,设置图片为指定状态的背景图。接受方的之前任何图片请求将会被取消。

如果图片缓存在本地,立即设置图片,否者指定的占位图片将会立即设置,同时一旦请求完成远程的图片会被设置。

参数

state

控制状态。

url

图片请求使用的

声明处

UIButton+AFNetWorking.h

setImageForState:withURL:placeholderImage:

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

讨论

从指定的URL异步下载一张图片,一旦请求完成,设置图片为指定状态的背景图。接受方的之前任何图片请求将会被取消。

如果图片缓存在本地,立即设置图片,否者指定的占位图片将会立即设置,同时一旦请求完成远程的图片会被设置。

参数

state

控制状态。

url

图片请求使用的

placeholderImage

背景图被初始设置,直到背景图请求完成。如果为nil,按钮将不会改变它的背景图直到背景图请求完成。

声明处

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异步下载一张图片,一旦请求完成,设置图片为指定状态的背景图。接受方的之前任何图片请求将会被取消。

如果图片缓存在本地,立即设置图片,否者指定的占位图片将会立即设置,同时一旦请求完成远程的图片会被设置。

如果指定一个成功的块,在返回之前这个块的职责是设置按钮的图片。如果没有指定一个成功的块,提供设置图片的默认方式setImage:forState

参数

state

控制状态。

urlRequest

图片请求使用的URL请求。

placeholderImage

背景图被初始设置,直到背景图请求完成。如果为nil,按钮将不会改变它的背景图直到背景图请求完成。

success

一个块当图片任务成功完成时被执行。这个块没有返回值,有3个参数:客户端发送的请求,从服务器接受到响应,从请求的响应数据创建图片。如果图片是从缓存返回,响应参数将会是nil。

failure

一个块当图片数据任务不成功完成或成功完成时被执行。这个块没有返回值,有3个参数:客户端发送的请求,从服务器接收到的响应,错误对象描述网络或解析发生的错误。

声明处

UIButton+AFNetworking.h

// END

上一篇下一篇

猜你喜欢

热点阅读