gpt4 book ai didi

Swift:如何将 UIWebView 中的当前 URL 放入 UITextField?

转载 作者:可可西里 更新时间:2023-11-01 01:40:10 27 4
gpt4 key购买 nike

(XCode 6.3.2, Swift 1.2) 我只是想将 UIWebView 加载网页的 URL 放入 UITextField 中。我找到的解决方案 here对我不起作用。

这是我的代码:

@IBOutlet weak var addressBar: UITextField!
@IBOutlet weak var webView: UIWebView!

//some more code...

func webViewDidFinishLoad(webView : UIWebView) {
self.addressBar.text = (self.webView.request?.URL.absoluteString)!
}

Swift 编译器错误:可选类型“NSURL”的值?未展开;你是不是想用'!'还是“?”?

任何想法或提示将不胜感激。谢谢。

编辑:
Airspeed Velocity 的答案对我有用(请参阅下面的工作代码)。但是我认识到有时加载的 URL 没有正确地写回 UITextField。
例如,它可以在 Vimeo 上重现。当我单击 vimeo.com 上的视频链接时,URL 应更改为:https://vimeo.com/105060039
在移动 Safari 上这很好用,但在 UIWebView 上不行。未向 URL“https://vimeo.com/”添加视频编号。
我做错了什么?是否有其他方法获取当前 URL?

@IBOutlet weak var addressBar: UITextField!
@IBOutlet weak var webView: UIWebView!

//some more code...

func webViewDidFinishLoad(webView: UIWebView) {
addressBar.text = webView.request?.URL?.absoluteString
}

最佳答案

webView.request 是可选的,因此您使用的是可选链接。您只需要对请求的 URL 执行相同的操作,这也是可选的:

self.addressBar.text = self.webView.request?.URL?.absoluteString

请注意,不需要在末尾用 ! 强制解包。这是因为 self.addressBar.text 本身是 String? 类型。

关于Swift:如何将 UIWebView 中的当前 URL 放入 UITextField?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30443221/

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