Swfit-返回传值

此篇内容主要阐述如何在Swfit中返回传值,比如:A(Label)-B(传递)-A(接收),和跨多个界面进行代理传递值.
.在移动开发中我们常常会用到这样的功能,那么接下来介绍:

一.通过代理传值的方式进行返回

如下步骤:

1.DeviceController.swfit

  • 在头部导入B界面的代理SendMessageDelegate
class DeviceController:BaseViewController,SendMessageDelegate, UITextFieldDelegate{

}
  • 在跳转的函数中指定self并实现跳转
func scanOnClick() {
        let reginserVc = QRScanViewController()
        reginserVc.delegate = self
        self.navigationController?.pushViewController(reginserVc, animated:true)
        print( "QRscanController")
    }
  • 此处为接收B界面代理方法,传递过来的值!
   //接收扫描界面返回传递过来的code
   func sendWord(message: String) {
      print("mmmmmm",message)
    }

2.QRScanViewController.swfit

  • 在头部Class上面写入代理以及方法
protocol SendMessageDelegate{
    func sendWord(message : String)
}
  • 在类里面实现代理
var delegate : SendMessageDelegate?

如图:Swfit-返回传值_第1张图片

  • 在B界面点击返回A界面时,处理传递值.
let namea = "fanhuizhi"
self.delegate?.sendWord(message: namea)
self.navigationController?.popViewController(animated: true)

结束!

就是这么简单,希望能够帮助到您,加油,再接再厉…Pulse

你可能感兴趣的:(IOS)