iOS开发中实现页面跳转的方法

在正常的编码过程中,页面之间的跳转可以说与MVC模式一样,是开发所必需的,但也许我们知道一个或多个页面之间的跳跃,那么iOS开发中实现页面跳转的方法大家了解多少呢?本文是中国E盟技术小编为大家搜集的,希望对你学习有帮助!

作为新手写的笔记,方便自己记忆:

从android转过来iOS的,对于页面的跳转,找了很多资料,现在记录一下页面跳转的方法。

1.用navigationController

2.直接跳(刚刚在网上找到的,不太熟,有错莫怪)


1.建一个RootViewController,在delegate.h


@property (strong, nonatomic) UIViewController *viewController;
@property (strong, nonatomic) UINavigationController *navController;

delegate.m代码didFinishLaunchingWithOptions函数中写代码:

RootViewController *rootView = [[RootViewController alloc] init];
rootView.title = @"Root View";

self.navController = [[UINavigationController alloc] init];

[self.navController pushViewController:rootView animated:YES];
[self.window addSubview:self.navController.view];


这些代码加载第一个页面RootViewController。
跳转到其他页面(比如SubViewController)代码:


SubViewController *subView = [[SubViewController alloc] init];
[self.navigationController pushViewController:subView animated:YES];
subView.title = @"Sub";


这样的好处是会自动生成返回按钮。


2.直接跳转,什么都没有

不用做其他多余的,直接新建一个view对象


SubViewController *subView = [[SubViewController alloc] initWithNibName:@"SubViewController" bundle:[NSBundle mainBundle]];
[self presentModalViewController:subView animated:YES];


这样就好了。

iOS6.0之后都不用这个函数了


[self presentModalViewController:subView animated:YES];


可以换成


[self presentViewController:subView animated:YES completion:nil];

页面跳转时数据的传递
比如在需要实现view1跳到view2的时候,把view1的一些数据传给view2

思路:

1.自定义一个bean类user,在view2实现user为一个成员变量。

2.view1跳的时候把数据封装为user, 并且赋值给view2.user

代码

1. view2

.h 声明成员变量


@property (strong, nonatomic) User *user;

2. view1


View2 *view2 = [[View2 alloc] init];
User *user = [[User alloc] init];
user.name = @"kevin";
view2.user = user;
[self.navigationController pushViewController: view2
animated:YES];


3. view2

取到变量


self.user.name

上文是iOS开发中实现页面跳转的方法介绍,大家了解了多少呢?有兴趣的朋友可以继续关注中国E盟技术频道更新的内容!