gpt4 book ai didi

ios - 如何加载 web View 内的 url 链接并将其保存在 SWIFT 的 web View 中

转载 作者:行者123 更新时间:2023-11-28 09:54:03 24 4
gpt4 key购买 nike

我有一个 Web View ,该 View 的网页底部有链接。我有办法处理它们被点击的情况,但它所做的只是将它们打开到一个新的 safari 浏览器中。这不是我想要的。我希望他们留在 web View 中,并允许我像那样轻松地导航它们。有办法做到这一点吗?

我试过只使用常规 WebView ,但底部的链接将不起作用。

这是我目前所拥有的:

class ViewController: UIViewController, UIWebViewDelegate {


@IBOutlet weak var myWebview: UIWebView!
@IBOutlet weak var returnButton: UIButton!

override func viewDidLoad() {
super.viewDidLoad()

prettyReturnButton(returnButton)

let url = NSURL(string: "mywebpage")

myWebview.delegate = self

print("Web page:" , url)
let requestObj = NSURLRequest(URL: url!);
myWebview.loadRequest(requestObj);
myWebview.keyboardDisplayRequiresUserAction = true



}

func webView(webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType: UIWebViewNavigationType) -> Bool {
switch navigationType {
case .LinkClicked:
// Open links in Safari
//let newRequestObj = NSURLRequest(URL: request.URL!)
// webView.loadRequest(newRequestObj)
UIApplication.sharedApplication().openURL(request.URL!)
return false
default:
// Handle other navigation types...
return true
}
}

最佳答案

给你的 UIViewcontroller 委托(delegate):UIWebViewDelegate

 let url = NSURL(string: "http://www.djmazacool.com")
let req = NSURLRequest(URL: url!)
YOURWEBVIEW.delegate = self
YOURWEBVIEW.loadRequest(req)



func webViewDidStartLoad(webView: UIWebView)
{
// start animation
print("start loaded call")
}
func webViewDidFinishLoad(webView: UIWebView)
{
// load url complete
print("loading done call")
}

输出:

Its my webView Output load url

不要忘记在 .plist 文件中添加此属性。

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>

.plist file code

关于ios - 如何加载 web View 内的 url 链接并将其保存在 SWIFT 的 web View 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40144923/

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