一、创建分类 使用交换方法地址(苹果黑魔法) 实现自定义的myInit方法和系统自带的init方法交换。 将下面的.m 和.h 文件放入工程中,并在PrefixHeader中引用此分类即可。
#import <UIKit/UIKit.h>
@interface UIViewController (BackButReset)
@end
#import "UIViewController+BackButReset.h"
@implementation UIViewController (BackButReset)
+ (void)load{
Method imp = class_getInstanceMethod([self class], @selector(init));
Method myImp = class_getInstanceMethod([self class], @selector(myInit));
method_exchangeImplementations(imp, myImp);
}
-(id)myInit;
{
[self myInit];
if (self) {
UIBarButtonItem *backBtn = [[UIBarButtonItem alloc] init];
backBtn.title = @"";//设置系统自带返回按键的标题
self.navigationItem.backBarButtonItem = backBtn;
}
return self;
}
@end