iOS应用开发中实现页面跳转的简单方法笔记

时间:2021-05-19

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

从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

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章