一.Model跳转的实现

1.新建工程

 Modal实现页面跳转和控制器数据传递

2.新建View控制器和导航控制器

(1)为拖控件,两个view一个navigation; 如图:

 Modal实现页面跳转和控制器数据传递

(2)view的“GotoTwo”按键添加Segues到Navigation 模式是“Modal”;如图

 Modal实现页面跳转和控制器数据传递

(3)设置view2(即TwoViewControllder)为NavigationController的根控制器,如图:

 Modal实现页面跳转和控制器数据传递

最终效果:

 Modal实现页面跳转和控制器数据传递

3.为view2新建相应的Cocoa Touch类“TwoViewController”

Modal实现页面跳转和控制器数据传递

Modal实现页面跳转和控制器数据传递

4.为View2的“Back”按键添加Action,为View1和View2的文本框添加IBOutLet;

Modal实现页面跳转和控制器数据传递

Modal实现页面跳转和控制器数据传递

Modal实现页面跳转和控制器数据传递

5.实现backClick函数;

Modal实现页面跳转和控制器数据传递

到此,为已经可以实现页面的跳转 和返回;

 

二.实现数据传递

从View1到View2是数据的“顺传”,利用segues的源控制器和目标控制器属性即可实现; 从View2到View1是数据的“逆传”,得用代理;

(View1对应ViewController ;View2对应TwoViewController)

(1)View1到View2: 重写ViewController的prepareForSegues方法;设置segue的目标控制器为NavigationController,因为NavigationController的根控制器是TwoViewController,所以跳转之后到了TwoViewController;

Modal实现页面跳转和控制器数据传递

(2)View2到View1:

a.  TwoViewController.h添加代理协议TwoViewControllerDelegate,协议里定义“Back”按键被点击代理方法;

b. TwoViewController.h添加代理myDelegate;

Modal实现页面跳转和控制器数据传递

c.去到ViewContrlloer实现代理协议和代理方法,并在之前的prepareForSegue方法里将自己设置为TwoViewController的代理人;如图从上至下红圈所示

 Modal实现页面跳转和控制器数据传递

d.最后一步,回到TwoViewController,当“back”按键被点击时,要通知代理;如图

Modal实现页面跳转和控制器数据传递 

 

相关文章:

  • 2021-11-13
  • 2021-04-19
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-28
  • 2021-11-20
猜你喜欢
  • 2021-11-09
  • 2022-12-23
  • 2021-11-14
  • 2022-12-23
  • 2022-01-17
  • 2021-08-26
  • 2022-12-23
相关资源
相似解决方案