《Swift 的界面之间的传值,详细介绍3种传值方式》 正向传值、协议传值、闭包

本文详细介绍了Swift中界面间传递值的三种方式:正向传值、协议传值和闭包。通过实例展示了如何在不同控制器之间传递数据,包括设置标题和背景颜色,并讨论了反向传值的实现方法。
摘要由CSDN通过智能技术生成

Swift 的界面之间的传值,详细介绍3种传值方式》正向传值、协议传值、闭包

  

1、 控制器界面间的正向传值

  

/*

   Swift 的界面之间的传值,详细介绍3种传值方式》

    正向传值、协议传值、闭包

*/

/*

    随着移动的开发,界面之间的传值,也频繁出现,更关键的是在面试的时候也时常被提起。提起最多的是 Block 同时还有协议 (在Swift中是叫 闭包)。我们要详细介绍它。

*/

//  Created by 周双建 on 15/12/7.

//  Copyright © 2015 周双建. All rights reserved.

//


import UIKit


class ViewController: UIViewController {

    let  Screen = CGSizeMake(

        200, 40)

    override func viewDidLoad() {

        super.viewDidLoad()

        // 我们首先,进行正面解说

        //我们先给我们的本控制器设置一个标题 (必须实现导航控制器否者不显示)

        self.title = "第一个控制器"

        self.view.backgroundColor = UIColor.whiteColor()

        // 设置一个点击按钮,驱动事件跳转到下一个控制器

        let  Btn = UIButton(type: UIButtonType.Custom) as UIButton

        Btn.frame = CGRectMake(20, 100, Screen.width, Screen.height)

        Btn.setTitle("跳转到第二个控制器", forState: UIControlState.Normal)

        Btn.setTitleColor(UIColor.magentaColor(), forState: UIControlState.Normal)

        Btn.addTarget(self, action: "BtnClick", forControlEvents: UIControlEvents.TouchUpInside)

        self.view.addSubview(Btn)

        // Do any additional setup after loading the view, typically from a nib.

    }

/*****************************************************************/

    // 按钮点击后,事件的触发

    func BtnClick(){

        //现获取,跳转的控制器对象

        let TVC = TwoViewController()

        //传入一个字符串,给第二个控制器

        TVC.TSTR = "第二个控制器"

        //在传入一个颜色对象

        TVC.TColoer = UIColor.blueColor()

        //实现界面的跳转

        self.navigationController?.pushViewController(TVC, animated: true)

        

    }

    override func didReceiveMemoryWarning() {

        super.didReceiveMemoryWarning()

        // Dispose of any resources that can be recreated.

    }

}


第二个控制器的内容是:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值