2016-03-24 12 views
0

Ich habe eine Webseite zu xcode WebView geladen. Aber nur der obere Teil der Seite wird geladen. Ich kann nicht bis zum Ende der Seite scrollen. Gleiche Tatsache für pdf. Nur die oberen 2 Seiten können gescrollt werden. Was kann ich tun? Hier ist mein Code. Vielen Dank im Voraus.WebView kann nicht von oben nach unten der Webseite scrollen

import UIKit 

class ViewController: UIViewController { 

@IBOutlet var webView: UIWebView! 
override func viewDidLoad() { 
    super.viewDidLoad() 

    var URL = NSURL(string: "http://www.archetapp.com") 
    webView.loadRequest(NSURLRequest(URL: URL!)) 

    } 

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

// für pdf

import UIKit 

class ViewController: UIViewController { 

    @IBOutlet var webViews: UIWebView! 

    var path = "" 

override func viewDidLoad() { 
    super.viewDidLoad() 

    path = NSBundle.mainBundle().pathForResource("ibook", ofType: "pdf")! 
    let url = NSURL.fileURLWithPath(path) 
    webViews.scalesPageToFit = true 
    webViews.scrollView.scrollEnabled = true 
    webViews.userInteractionEnabled = true 
    self.webViews.loadRequest(NSURLRequest(URL: url!))   
    } 

    override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 

    } 

} 
+0

Was ist der WebView-Rahmen, den Sie angegeben haben ... versuchen Sie, die Höhe der Webansicht zu vergrößern und zu sehen, ob es Unterschiede im Scroll-Teil gibt? –

Antwort

0

Try this!

import UIKit 

class ViewController: UIViewController, UIWebViewDelegate { 

    @IBOutlet var webView : UIWebView 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     //load initial 
     path = NSBundle.mainBundle().pathForResource("ibook", ofType: "pdf")! 
     let url = NSURL.fileURLWithPath(path) 
     var req = NSURLRequest(URL : url) 
     webView.delegate = self // <--- 
     webView.loadRequest(req) 
    } 

    func webViewDidStartLoad(webView : UIWebView) { 
     //UIApplication.sharedApplication().networkActivityIndicatorVisible = true 
     println("webViewDidStartLoad") 
    } 

    func webViewDidFinishLoad(webView : UIWebView) { 
     //UIApplication.sharedApplication().networkActivityIndicatorVisible = false 
     webViews.scalesPageToFit = true 
     webViews.scrollView.scrollEnabled = true 
     webViews.userInteractionEnabled = true 
     println("webViewDidFinishLoad") 
    } 
} 
+0

Vielen Dank für Ihre Antwort. Aber es funktioniert nicht. Ich kann nur eine Seite scrollen. Gibt es eine andere Lösung? – tuhin

+0

versuchen, in webViewDidFinishLoad hinzufügen -> // webView.scrollView.maximumZoomScale = 20; // webView.scrollView.minimumZoomScale = 1; –

0

Ich hatte das gleiche Problem heute nur und zumindest in meinem Fall war es, indem die „Scale Seiten anpassen“ verursacht Option in den WebView Eigenschaften geprüft. Ich gehe davon aus, dass die Antwort von Carlos bezüglich der Zoomskala es sowieso behebt, aber ich brauchte die Option nicht in erster Linie aktiviert zu haben, das war meine einfache Lösung.

Verwandte Themen