zoukankan      html  css  js  c++  java
  • Modal实现页面跳转和控制器数据传递

    一.Model跳转的实现

    1.新建工程

     

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

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

     

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

     

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

     

    最终效果:

     

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

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

    5.实现backClick函数;

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

    二.实现数据传递

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

    (View1对应ViewController ;View2对应TwoViewController)

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

    (2)View2到View1:

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

    b. TwoViewController.h添加代理myDelegate;

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

     

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

     

  • 相关阅读:
    jquery
    jquery特效
    CSS
    跨域详解 been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource
    MySQL DATE_FORMAT() 函数
    微信支付如何做分账?
    为什么要用Redis?一定要用Redis吗?
    spring boot配置文件中 spring.mvc.static-path-pattern 配置项
    阿里云MNS消息服务quene方式发送数据流程图
    mybatis-plus QueryWrapper 自定义查询条件
  • 原文地址:https://www.cnblogs.com/ajilisiwei/p/Modal.html
Copyright © 2011-2022 走看看