在Swift中以编程方式创buildwebViews

我想在我的ViewController中创build像图库的东西。 为此,我需要多个webViews,这取决于从JSON请求中获取的图像数量。 如果我需要的话,如何插入新的webViews?

在这里输入图像说明

正如你在上面的图片中看到的,我在ViewController中有一个scrollView和一个UIWebView。 如果需要,我将如何在第一个(第二,第三等)内部创build一个新的webView? 可能吗?

您可以使用这段代码尽可能简单地编程创buildWeb视图

override func viewDidLoad() { super.viewDidLoad() let webV:UIWebView = UIWebView(frame: CGRectMake(0, 0, UIScreen.mainScreen().bounds.width, UIScreen.mainScreen().bounds.height)) webV.loadRequest(NSURLRequest(URL: NSURL(string: "http://www.google.co.in"))) webV.delegate = self; self.view.addSubview(webV) } 

如果你想使用这个委托function

 func webView(webView: UIWebView!, didFailLoadWithError error: NSError!) {  print("Webview fail with error \(error)"); } func webView(webView: UIWebView!, shouldStartLoadWithRequest request: NSURLRequest!, navigationType: UIWebViewNavigationType) -> Bool {  return true; } func webViewDidStartLoad(webView: UIWebView!) {  print("Webview started Loading") } func webViewDidFinishLoad(webView: UIWebView!) {  print("Webview did finish load") } 

对于Swift 3:

 override func viewDidLoad() { super.viewDidLoad() let webV = UIWebView() webV.frame = CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: UIScreen.main.bounds.height) webV.loadRequest(NSURLRequest(url: NSURL(string: "https://www.apple.com")! as URL) as URLRequest) webV.delegate = self self.view.addSubview(webV) } 

参考:基于@Deepakraj Murugesan提供的答案

尽pipeUIWebView可能不是您应该用来显示图像的东西,但您可以用几行代码创build一个:

 let webView = UIWebView(frame: someFrame) webView.loadRequest(NSURLRequest(URL: someURL!)) view.addSubview(webView) 

你不能这样做,原来,webview将占用大量的内存,如果你使用一些它,可能会导致一个不好的经验,为什么不使用ImageView?

我认为SDWebImage + UIImageView将帮助你。 请参阅: https : //github.com/rs/SDWebImage