交换方法

//

//ViewController.m

//CocoTest_1

//

//Created by S u p e r m a n on 2017/3/14.

//Copyright © 2017年张浩. All rights reserved.

//

#import"ViewController.h"

#import"UIImage+AddImageFunc.h"

#import

@implementationUIImage (AddImageFunc)

+ (void)load {

MethodmethodOfOrigin =class_getClassMethod(self,@selector(imageNamed:));

MethodmethodOfCurrent=class_getClassMethod(self,@selector(custom_imageNamed:));

//交换两个方法

method_exchangeImplementations(methodOfOrigin, methodOfCurrent);

}

/*

*外界主动调用imageNamed:的时候,相当于调用了custom_imageNamed:这个方法

*

**/

+ (UIImage*)custom_imageNamed:(NSString*)name {

if(name.length==0) {

name =@"1";

}

/*

*1.当主动调用[self custom_imageNamed:name]

2.因为已经交换了所以相当于调用[self imageNamed:name];

**/

UIImage* image = [selfcustom_imageNamed:name];

returnimage;

returnnil;

}

@end

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容