我有以下代码:
UIWebView.loadRequest(NSURLRequest(URL: NSURL(string: "google.ca")))
我收到以下错误:
'NSURLRequest' 不能转换为 UIWebView.
知道问题出在哪里吗?
loadRequest:是实例方法,不是类方法。您应该尝试使用 UIWebview 的实例作为接收者调用此方法,而不是类本身。
webviewInstance.loadRequest(NSURLRequest(URL: NSURL(string: "google.ca")!))
但是,正如@radex 在下面正确指出的那样,您还可以利用柯里化来调用函数,如下所示:
UIWebView.loadRequest(webviewInstance)(NSURLRequest(URL: NSURL(string: "google.ca")!))
斯威夫特 5
webviewInstance.load(NSURLRequest(url: NSURL(string: "google.ca")! as URL) as URLRequest)
Swift 中的 UIWebView
@IBOutlet weak var webView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
let url = URL (string: "url here")
let requestObj = URLRequest(url: url!)
webView.loadRequest(requestObj)
// Do any additional setup after loading the view.
}
/////////////////////////////////////////////// //////////////// 如果你想使用 webkit
@IBOutlet weak var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
let webView = WKWebView(frame: CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: self.webView.frame.size.height))
self.view.addSubview(webView)
if let url = URL (string: "your URL") {
let requestObj = URLRequest(url: url)
self.webView.load(requestObj)
}
}
试试这个:
添加 UIWebView 到视图。
使用助手编辑器连接 UIWebview 插座并命名您的“webview”。
UIWebView 加载 URL.
@IBOutlet weak var webView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
// Your webView code goes here
let url = URL(string: "https://www.example.com")
let requestObj = URLRequest(url: url! as URL)
webView.load(requestObj)
}
并运行应用程序!!
Swift 3 不再在 URL 和 URLRequest 上使用 NS 前缀,因此更新后的代码将是:
let url = URL(string: "your_url_here")
yourWebView.loadRequest(URLRequest(url: url!))
在 Swift 4 或 4.2 中你可以像这样使用:
你的观点如下:
import UIKit
import WebKit
class ViewController: UIViewController {
@IBOutlet weak var wkwebview: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
let request = URLRequest(url: URL(string: "**your URL**")!)
wkwebview?.load(request)
}
}
Allow 允许任意加载 true info.plist
<key>NSAppTransportSecurity</key>
<dict>
<key>Allow Arbitrary Loads</key>
<true/>
</dict>
Note info.plist 将如下所示
Swift 3 - Xcode 8.1
@IBOutlet weak var myWebView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
let url = URL (string: "https://ir.linkedin.com/in/razipour1993")
let requestObj = URLRequest(url: url!)
myWebView.loadRequest(requestObj)
}
斯威夫特 3
@IBOutlet weak var webview: UIWebView!
webview.loadRequest(URLRequest(url: URL(string: "https://www.yourvideo.com")!))
简单,经过测试和工作 100%
导入 webkit :
import WebKit
将 IBOutlet 分配给 webview:
var webView : WKWebView!
设置代表:
class ViewController: UIViewController , WKNavigationDelegate{
在 viewDidLoad() 上写代码:
// loading URL :
let myBlog = "https://stackoverflow.com/users/4600136/mr-javed-multani?tab=profile"
let url = NSURL(string: myBlog)
let request = NSURLRequest(url: url! as URL)
// init and load request in webview.
webView = WKWebView(frame: self.view.frame)
webView.navigationDelegate = self
webView.load(request as URLRequest)
self.view.addSubview(webView)
self.view.sendSubview(toBack: webView)
编写委托方法:
//MARK:- WKNavigationDelegate
func webView(webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: NSError) {
print(error.localizedDescription)
}
func webView(webView: WKWebView, didStartProvisionalNavigation navigation: WKNavigation!) {
print("Strat to load")
}
func webView(webView: WKWebView, didFinishNavigation navigation: WKNavigation!) {
print("finish to load")
}
迅速 5
import UIKit
import WebKit
class ViewController: UIViewController, WKUIDelegate {
var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
let myURL = URL(string:"https://www.apple.com")
let myRequest = URLRequest(url: myURL!)
webView.load(myRequest)
}
override func loadView() {
let webConfiguration = WKWebViewConfiguration()
webView = WKWebView(frame: .zero, configuration: webConfiguration)
webView.uiDelegate = self
view = webView
}
}
加载 URL 到 WebView 非常容易。只需在您的故事板中创建一个 WebView,然后您就可以使用以下代码加载 url。
let url = NSURL (string: "https://www.simplifiedios.net");
let request = NSURLRequest(URL: url!);
webView.loadRequest(request);
就这么简单,只有 3 行代码 :)
参考:UIWebView 示例
UIWebView loadRequest:使用 NSURL 对象创建 NSURLRequest,然后将请求传递给
uiwebview
它将请求的 URL 加载到 Web 视图中。
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let url = NSURL (string: "http://www.google.com");
let requestObj = NSURLRequest(URL: url!);
myWebView.loadRequest(requestObj);
self.view.addSubview(myWebView)
}
更多参考:
https://sourcefreeze.com/uiwebview-example-using-swift-in-ios/
使用 Swift 语言的 Webview
let url = URL(string: "http://example.com")
webview.loadRequest(URLRequest(url: url!))
对于 swift 4.2、5+
@IBOutlet weak var webView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
//Func Gose Here
let url = URL(string: link)
let requestObj = URLRequest(url: url! as URL)
webView.loadRequest(requestObj)
}
对于 Swift 3.1 及以上版本
let url = NSURL (string: "Your Url")
let requestObj = NSURLRequest(url: url as! URL);
YourWebViewName.loadRequest(requestObj as URLRequest)
Swift 4 更新 以编程方式创建 WebView。
import UIKit
import WebKit
class ViewController: UIViewController, WKUIDelegate {
var webView: WKWebView!
override func loadView() {
let webConfiguration = WKWebViewConfiguration()
webView = WKWebView(frame: .zero, configuration: webConfiguration)
webView.uiDelegate = self
view = webView
}
override func viewDidLoad() {
super.viewDidLoad()
let myURL = URL(string: "https://www.apple.com")
let myRequest = URLRequest(url: myURL!)
webView.loadRequest(myRequest)
}}
import UIKit
class ViewController: UIViewController{
@IBOutlet weak var webView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
//Func Gose Here
loadUrl()
}
func loadUrl(){
let url = URL(string: "Url which you want to load(www.google.com)")
let requestObj = URLRequest(url: url! as URL)
webView.load(requestObj)
}
}
您可以这样加载页面:
let url: URL = URL(string:"https://google.com")!
webView.loadRequest(URLRequest.init(url: url))
或单线方法:
webView.loadRequest(URLRequest.init(url: URL(string: "https://google.com")!))
webView 是你的 outlet var.
试试这个
let url = NSURL (string: "http://www.apple.com");
myWebView.loadRequest(NSURLRequest(URL: url!));