zoukankan      html  css  js  c++  java
  • swift学习笔记

    页面之间的跳转

    从一个viewcontroller跳转到另外一个viewcontroller使用如下函数

     1 override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
     2         if (segue.identifier == "editTodo"){
     3             var vc = segue.destinationViewController as! DetailViewController
     4             var index = tableView.indexPathForSelectedRow()
     5             let indePath = index
     6             if ((indePath) != nil){
     7                 vc.todo = todos[indePath!.row]
     8                 vc.isEdit = true;
     9                 vc.index = indePath!.row
    10                 
    11             }
    12         }
    13         
    14     }

    其中segue就是链接两个viewcontroller的对象,

    var vc = segue.destinationViewController as! DetailViewController

    可以获取到需要跳转的viewcontroller的对象,如果需要给目标传值,可以在目标的viewcontroller的代码中添加一个成员变量,给他赋值。(真的只有这么土的方法么?有没有别的方式?求指点)

    如果两个viewcontroller之间有多个传值怎么办?

    可以使用identifier来区分,

    identifier的配置在

     

    如果需要从目标viewcontroller回传之则需要

     1 @IBAction func close(segue: UIStoryboardSegue){
     2         
     3         
     4         var detail = segue.sourceViewController as! DetailViewController
     5         
     6         if(!detail.isEdit!){
     7             todos.append(detail.todo!)
     8            
     9         }else{
    10             todos[detail.index] = detail.todo!
    11         }
    12         
    13         tableView.reloadData()
    14         
    15         
    16     }

    close是自己定义的函数,用于回传值,因为是回传,所以是sourceViewController

    var detail = segue.sourceViewController as! DetailViewController

    设置方法是在storyboard中设置

    图片中左边的viewcontroller就是要回传值的controller,给他的exit绑定一个函数就可以了

     

  • 相关阅读:
    git revert和git reset的区别
    git merge 和 git rebase 小结
    Markdown——入门指南
    使用Git Wiki 管理文档时,文档编写的基本用法
    mysql 列 默认添加 dedault null ??
    redis aof文件过大问题
    redis源码分析——aofrewrite
    改变文章的字号大小
    推荐大家使用的CSS书写规范及顺序
    inline-block 前世今生
  • 原文地址:https://www.cnblogs.com/HighFun/p/4562310.html
Copyright © 2011-2022 走看看