【问题标题】:How to link UIWebView to website如何将 UIWebView 链接到网站
【发布时间】:2016-02-18 08:20:05
【问题描述】:

这里有一个非常基本的问题:我的视图控制器中有一个网络视图,但不知道如何让它显示一个网站。我能找到的解决方案都不适合我。我在网上看到的大部分内容都告诉我输入下面的代码(示例 url),但我收到错误,告诉我删除“@”并添加几个“;”但这样做并不能解决问题。

- (void)viewDidLoad {
[super viewDidLoad];
NSString *fullURL = @"http://conecode.com";
NSURL *url = [NSURL URLWithString:fullURL];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[_viewWeb loadRequest:requestObj];

我不确定为什么我在处理看似如此简单的事情时遇到这么多困难……这就是我的代码中的全部内容。如何让 web 视图显示一个网站?提前致谢!我已经从这个社区学到了很多东西。

import UIKit

class SecondViewController: UIViewController {

@IBOutlet var webView: UIWebView!

override func viewDidLoad() {
    super.viewDidLoad()

    // Do any additional setup after loading the view.

}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

【问题讨论】:

    标签: ios objective-c swift uiwebview


    【解决方案1】:

    经过更多挖掘后,我发现这似乎可行:

        var url = NSURL(string: "https://www.google.com")
    
        var request = NSURLRequest(URL: url!)
    
        webView.loadRequest(request)
    

    我不确定这与我找到的早期代码 sn-ps 有何关系,并且它不适用于 http(vs https)网站,所以我仍然需要弄清楚...

    【讨论】:

      【解决方案2】:

      这里是如何将页面加载到 UIWebView。

      @IBOutlet var webView: UIWebView!
      
          override func viewDidLoad() {
              super.viewDidLoad()
      
              // Do any additional setup after loading the view.
              var url = NSURL(string: "https://www.google.com")
              var request = NSURLRequest(URL: url!)
              webView.loadRequest(request)
      
          }
      
          override func didReceiveMemoryWarning() {
              super.didReceiveMemoryWarning()
              // Dispose of any resources that can be recreated.
          }
      

      关于 http NSAppTransportSecurity 密钥到您的 info.plist 的问题

      示例如下:

      <key>NSAppTransportSecurity</key>
          <dict>
              <key>NSAllowsArbitraryLoads</key>
              <true/>
              <key>NSExceptionDomains</key>
          <dict>
                  <key>google.com</key>
                  <dict>
                      <key>NSIncludesSubdomains</key>
                      <true/>
                      <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
                      <true/>
                      <key>NSTemporaryExceptionMinimumTLSVersion</key>
                      <string>TLSv1.1</string>
                  </dict>
              </dict>
      </dict>
      

      NSAllowsArbitraryLoads - 它允许连接到任何 http 站点。

      或者您可以使用 NSExceptionDomains 指定站点 - 就像我在上面的代码中发布的那样。 在更多的事情上 - 检查 WKWebView - 它比 UIWebView 显示页面要好得多。 - https://developer.apple.com/library/ios/documentation/WebKit/Reference/WKWebView_Ref/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-03-17
        • 2018-04-29
        • 2017-11-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多