我正在尝试通过 webview 对象创建一个在后台播放 mp4 的登录页面。这是我的代码,错误就在这一行。
webView.loadData(url!, MIMEType: "video/mp4", textEncodingName: String(), baseURL: NSURL())
错误是
"cannot invoke 'loadData' with argument list of type'(NSURL....'"
我不知道下一步该尝试什么。先感谢您。
class ViewController: UIViewController {
@IBOutlet var webView: UIWebView!
var moviePlayer: MPMoviePlayerController!
func loginVideo(){
webView.frame = self.view.frame
let filePath = NSBundle.mainBundle().pathForResource("movie", ofType:"mp4")
let url = NSURL.fileURLWithPath(filePath!)
webView.loadData(url!, MIMEType: "video/mp4", textEncodingName: String(), baseURL: NSURL())
webView.userInteractionEnabled = false;
let filter = UIView()
filter.frame = self.view.frame
filter.backgroundColor = UIColor.blackColor()
filter.alpha = 0.05
self.view.addSubview(filter)
}
}
最佳答案
您必须使用 NSData 代替 URL。 loadData 方法的实际签名是,
wkWebView.loadData(data: NSData, MIMEType: String, characterEncodingName: String, baseURL: NSURL)
尝试替换以下行,
let url = NSURL.fileURLWithPath(filePath!)
webView.loadData(url!, MIMEType: "video/mp4", textEncodingName: String(), baseURL: NSURL())
与
let data = NSData(filePath!)
webView.loadData(data, MIMEType: "video/mp4", textEncodingName: String(), baseURL: NSURL())
关于swift - 无法使用列表类型 NSURL 调用加载数据...正在加载本地 Web View 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34099787/