我正在尝试将网站预览加载到UIImageView
中。当收到所请求的网站URL时,将调用以下方法:
func loadWebsite(item:ShareItem) {
activitySpinner.startAnimating()
imageView.setImageForURL(item.asset!.absoluteString) { (image) in
self.showActionButton(true)
self.activitySpinner.stopAnimating()
self.actionButton.titleLabel?.text = "Open"
}
}
我相信
setImageForURL
网站中的逻辑存在错误,应该将网站加载到我的自定义图像视图类中:class MyCustomImageView:UIImageView, UIWebViewDelegate {
var webview:UIWebView?
var completion:((UIImage?)->Void)?
func setImageForURL(urlString:String, completion:((image:UIImage?)->Void)?) {
self.completion = completion
guard let url = NSURL(string: urlString) else {
self.completion?(nil)
return
}
let request = NSURLRequest(URL: url)
webview = UIWebView(frame: self.bounds)
webview!.delegate = self
webview?.scalesPageToFit = true
webview!.loadRequest(request);
}
有人对我如何正确处理此问题有一些见解吗?正确并以正确的顺序调用了所有方法,但是
UIImageView
中没有显示图像。 最佳答案
您有时需要将Webview添加到图像视图中。我的意思是,在imageView上使用addSubview
方法,并在调用webview上的loadRequest
方法之前使用所有这些方法。您的Web视图需要具有“物理”框架并存在于父视图中,然后才能加载内容。
关于ios - 在UIImageView中加载网站预览(快速),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38898810/