在iOS7中,如果使用了UINavigationController,那么系统自带的附加了一个从屏幕左边缘开始滑动可以实现pop的手势。但是,如果自定义了navigationItem的leftBarButtonItem,那么这个手势就会失效。看到很多地方都有讨论到,之前也听sy说过,很多开源的代码都是自定义的类似系统自带的效果,基本都是在push之前做一个截屏,pop回来之前看到的都是截图,以下的不知是哪位牛人写的代码也是这个原理。觉得很好用,禁不住想写上博客~~~
使用方法:
1.AppDelegate里面实现
(1).h文件
@property(nonatomic,retain)MLNavigationController * navigationController;
+ (AppDelegate *)getAppDelegate;
(2).m文件
@synthesize navigationController=_navigationController;
//不为ARC时需释放
-(void)dealloc{
[_navigationController release];
[super dealloc];
}
//返回 AppDelegate
+ (AppDelegate *)getAppDelegate
{
return (AppDelegate *) [[UIApplication sharedApplication] delegate];
}
2.需要push的viewcontroller
#define g_Navigation [AppDelegate getAppDelegate].navigationController
FirstViewController * first=[[FirstViewController alloc]init];
[g_Naviga