统一添加导航控制器右滑返回手势
来源:互联网 发布:免流软件下载 编辑:程序博客网 时间:2024/04/30 14:23
一、新建一个控制器,继承UINavigationController
二、右滑手势代码
01
- (
void
)viewDidLoad
02
{
03
[super viewDidLoad];
04
05
// 添加右滑手势
06
[self addSwipeRecognizer];
07
}
08
09
#pragma mark 添加右滑手势
10
- (
void
)addSwipeRecognizer
11
{
12
// 初始化手势并添加执行方法
13
UISwipeGestureRecognizer *swipeRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(
return
)];
14
15
// 手势方向
16
swipeRecognizer.direction = UISwipeGestureRecognizerDirectionRight;
17
18
// 响应的手指数
19
swipeRecognizer.numberOfTouchesRequired = 1;
20
21
// 添加手势
22
[[self view] addGestureRecognizer:swipeRecognizer];
23
}
24
25
#pragma mark 返回上一级
26
- (
void
)
return
27
{
28
// 最低控制器无需返回
29
if
(self.viewControllers.count <= 1)
return
;
30
31
// pop返回上一级
32
[self popToRootViewControllerAnimated:YES];
33
}
三、然后只要在AppDelegate中将自定义的导航控制器设置为根控制器
01
#import "AppDelegate.h"
02
#import "MainViewController.h"
03
#import "FirstViewController.h"
04
05
@implementation AppDelegate
06
07
- (
BOOL
)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
08
{
09
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
10
11
// 初始化一个控制器
12
FirstViewController *first = [[FirstViewController alloc] initWithNibName:@
"FirstViewController"
bundle:nil];
13
14
// 初始化自定义的导航控制器
15
MainViewController *main = [[MainViewController alloc] initWithRootViewController:first];
16
17
// 把自定义的导航控制器设置为根控制器
18
self.window.rootViewController = main;
19
20
self.window.backgroundColor = [UIColor whiteColor];
21
[self.window makeKeyAndVisible];
22
return
YES;
23
}
四、统一成一个导航控制器可以统一一些东西
1、统一导航栏样式
1
self.navigationBar.barTintColor = [UIColor whiteColor];
2、若在控制器之间跳转时需要做一些事情,可在自定义的控制器里添加下面两个方法
01
#pragma mark push方法
02
- (
void
)pushViewController:(UIViewController *)viewController animated:(
BOOL
)animated
03
{
04
// do something you want
05
...
06
07
[super pushViewController:viewController animated:animated];
08
}
09
10
#pragma mark pop方法
11
- (UIViewController *)popViewControllerAnimated:(
BOOL
)animated
12
{
13
// 比如停止网络请求
14
...
15
16
return
[super popViewControllerAnimated:animated];
17
}
0 0
- 统一添加导航控制器右滑返回手势
- 右滑手势导航返回的相关设置
- iOS-右滑返回,利用Runtime添加全屏Pop手势
- 捕捉右滑返回手势
- 捕捉右滑返回手势
- iOS开发之自定义导航栏返回按钮右滑返回手势失效的解决
- iOS开发之自定义导航栏返回按钮右滑返回手势失效的解决
- iOS开发之自定义导航栏返回按钮右滑返回手势失效的解决
- iOS开发之自定义导航栏返回按钮右滑返回手势失效的解决
- iOS开发之自定义导航栏返回按钮右滑返回手势失效的解决
- 自定义导航栏返回按钮右滑返回手势失效等问题
- iOS开发之自定义导航栏返回按钮右滑返回手势失效的解决
- iOS 自定义导航栏pop返回手势,全屏右滑返回
- 导航控制器自定义返回控件及手势失效问题
- iOS开发之自定义导航栏返回按钮右滑返回手势失效的解决---亲测是有效的。
- iOS 解决自定义导航栏返回按钮 系统右滑返回手势失效问题 最简单方法
- iOS-全屏右滑返回手势
- IOS 开启关闭右滑手势返回
- Fibonacci数
- mabatis 动态sql
- OCP 1Z0 051 QUESTION NO: 28
- 用userdata和localstorage做跨浏览器本地储存(转)
- 说说字符集和编码(个人感觉写的通俗易懂)
- 统一添加导航控制器右滑返回手势
- linux 解压缩文件
- 常用正则表达式大全!
- Spring与Struts2整合的两种解决方案
- 踏出 gstreamer plugin 的第一步
- [LeetCode] Evaluate Reverse Polish Notation [2]
- jsoup简单运用
- C#—GetFiles()获得的文件列表与在本机文件夹上按名称的排序一致
- TiledMap+TexturePacker,解决cocos2dx下tiled地图1坑