gpt4 book ai didi

swift - xcode 6 - swift - 通过弹出框传递字符串

转载 作者:行者123 更新时间:2023-11-30 14:19:33 25 4
gpt4 key购买 nike

我的项目有两个 View Controller 。初始 View Controller 具有三个按钮(viewController1)。第二个 View Controller 有一个 webview (viewController2)。我将一个礼物设置为从 viewController1 到 viewController2 的弹出窗口。我希望每个按钮在 Segue 发生时在 webview 中打开一个特定网页(当我点击一个按钮时,webview 会向上滑动一个网站。如果我点击另一个按钮,webview 会向上滑动一个不同的预定网站。)

如何将预定的网站传递给viewController2?

到目前为止我的代码:

 // viewController1
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if (segue.identifier == "webViewPopover") {
let webviewVC:WebviewViewController = segue.destinationViewController as WebviewViewController
webviewVC.receivedURL = "http://www.apple.com" //test string
}
}


// viewController2
var receivedURL:String!

@IBOutlet var webView: UIWebView!

override func viewDidLoad() {
super.viewDidLoad()

let myURL = NSURL (string: receivedURL)
let request = NSURLRequest(URL: myURL!)
webView.loadRequest(request)
}

最佳答案

就像你做的那样。

如果您问,如何从不同的按钮派生不同的字符串,最简单的方法是使用不同的处理程序来设置局部变量,然后像您所做的那样代理到下一个 VC。这是最直接的方法。

我使用过的一种更高级的技术(现在可能太多了),是将一个闭包包装在一个对象中,将其作为发送者传递,并使用不可知的prepareForSegue检查发送者并分派(dispatch)该方法。不过,为了满足您的需求,请使用 Apple 的 API - 您正在做的事情,只需向其提供一个在按钮单击中缓存的本地字符串变量即可。

关于swift - xcode 6 - swift - 通过弹出框传递字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30659287/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com