代码之家  ›  专栏  ›  技术社区  ›  Azim Talukdar

wkwebview在横向模式下未正确显示

  •  -1
  • Azim Talukdar  · 技术社区  · 7 年前

    这就是我的故事板的样子

    enter image description here

    下面是我的代码

    class ViewController: UIViewController,WKNavigationDelegate {//WKUIDelegate
    
    @IBOutlet weak var webContainer: UIView!
    var webView : WKWebView!
    
    
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    
        initMyWeb()
    }
    
    func initMyWeb() -> Void {
    
    
        let myBlog = "https://google.com"
        let myURL = URL(string: myBlog)
        let request = URLRequest(url: myURL!)
    
        // init and load request in webview.
        webView = WKWebView(frame: self.webContainer.frame)
        webView.navigationDelegate = self
        webView.load(request)
        self.webContainer.addSubview(webView)
        self.webContainer.sendSubview(toBack: webView)
    }
    
    
    //MARK:- WKNavigationDelegate
    
    func webView(_ webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: Error) {
        print(error.localizedDescription)
    }
    func webView(_ webView: WKWebView, didStartProvisionalNavigation navigation: WKNavigation!) {
        print("Start to load")
    }
    func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
        print("finish to load")
    }
    
    override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
        webView.frame = self.webContainer.frame
    }
    

    当我在横向模式下运行它时,它显示如下

    enter image description here

    我的问题是:如何使其适应横向模式下的整个屏幕?我给它的尺寸等于 网络容器 看法

    1 回复  |  直到 7 年前
        1
  •  1
  •   Lenin    7 年前

    试试这个

    webView = WKWebView(frame: self.webContainer.frame)
    webView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
    webView.navigationDelegate = self
    webView.load(request)