从Void函数中提取字符串变量

问题描述 投票:0回答:2

这是我的问题:

我想从Launch App()函数中恢复变量jan,并将其插入上面的替代中,而不是“ Hello there”中。

        override func prepare(for segue: UIStoryboardSegue, sender: Any?){

            let destVC : troisViewController = segue.destination as! troisViewController

            destVC.dataFromFirst = "Hello there"
        }

        func launchApp(decodedURL: String) -> Void {

            if presentedViewController != nil{
            return
            }

        let jan: String = "\(decodedURL)"
        print(jan)


        self.performSegue(withIdentifier: "troissegue", sender: self)
    }

问题是解码的URL是通过使用我的手机的摄像头获得的条形码,类型的解决方案:destVC.dataFromFirst = launchApp()不起作用...

有人有类似的问题吗?

提前谢谢您

swift avfoundation void
2个回答
3
投票

一个简单的解决方案是将字符串作为sender参数传递>

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {    
    if segue.identifier == "troissegue" {
        let destVC = segue.destination as! troisViewController
        destVC.dataFromFirst = sender as! String
    }
}

func launchApp(decodedURL: String) -> Void {

    if presentedViewController != nil { return }
    self.performSegue(withIdentifier: "troissegue", sender: decodedURL)
}

0
投票

您可以像这样更改代码:

© www.soinside.com 2019 - 2024. All rights reserved.