iPhone - Automatische Größenanpassung von UIWebView-Inhalten passt nicht zum Frame
Ich bin die Erzeugung einer UIWebView in meiner viewDidLoad-Methode, mit einer winzigen Größe (sagen wir so etwas wie 50x70). Und dann lege ich es in eine super UIView.
Ich möchte, um Ihre Inhalte passen die webView-Rahmen. Um dies zu tun, ich schrieb :
oneView = [[UIWebView alloc] initWithFrame:CGRectMake(x, y, W, H)];
oneView.backgroundColor = [UIColor whiteColor];
oneView.autoresizingMask = UIViewAutoresizingFlexibleWidth;
oneView.scalesPageToFit = YES;
oneView.autoresizesSubviews = YES;
[self.view addSubview:oneView];
[oneView loadRequest:/*some request*/];
Aber, dies zu tun, die web-Seite wird nicht geändert, um den Rahmen der UIWebView.
Es scheint skaliert werden, um etwas anderes, kleineres als die superview-Rahmen und breiter als die webview ist eine.
Wenn ich die webview-frame-Größe, um die gesamte superview - Größe, ist es ok.
Wie kann ich erzwingen, das web-Inhalte (real www-Inhalt) passen Sie den Rahmen des "reduzierten" UIWebView ?
InformationsquelleAutor der Frage Oliver | 2011-04-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Antwort ist: Sie tun dies bereits, aber es gibt Grenzen.
Blick auf die folgenden screenshots:
Screeshot 1, scalesPageToFit JA und NEIN
Beide webview haben die gleiche Breite. In die untere Seite passt perfekt.
Screeshot 2, scalesPageToFit die beiden JA aber auch kleinere leiterbahnbreiten set
Beide webview versuchen Sie, sich die Seite aber es wird nicht, da gibt es eine Größenbeschränkung.
InformationsquelleAutor der Antwort Nick Weaver
Für diejenigen,,, die vor demselben problem, können Sie deaktivieren die UIWebView native scrollen durch
und fügen Sie einen separaten
scrollView
die Griff scrollen und Zoomen, stattwebView
's native scrollen.Als Nächstes implementieren
setzen ordnungsgemäße
webView
Rahmen.Hoffe, das jemand hilft. Gute coding!
InformationsquelleAutor der Antwort zshcbka
Versuchen.Das ist für mich arbeiten.
InformationsquelleAutor der Antwort Rajni Johar Raswant
Können Sie Folgendes tun:
Machen, dass die Inhalte Ihrer Sicht wachsen als Ihre Ansicht wächst. Der Inhalt wird wachsen so groß wie möglich, während immer noch passend die UIWebView und ohne Verzerrung.
Es gibt andere Optionen für diese Eigenschaft, und Sie finden eine ziemlich gute Erklärung der komplizierteren diejenigen, die zusammen mit Bildern zeigen die Wirkung der einzelnen, in der View Programming Guide for iOS
Beachten Sie, dass die autoresizing Maske, die Sie sich setzen, stellen Sie die Ansicht selbst nur wachsen, wenn seine superview wächst. Wenn sich selbst.Ansicht ist schon groß, wenn die kleinen UIWebView ist angelegt und selbst.Ansicht nicht wachsen, die UIWebView nicht wachsen. Du bist wahrscheinlich bewusst, aber ich bin das hinzufügen es nur für den Fall, da wir nicht sehen können, selbst.view s-frame in diesem code-snippet.
Hoffe, das ist hilfreich.
InformationsquelleAutor der Antwort salo.dm
Für Swift 2.2 ich erreicht habe, das gleiche mit
InformationsquelleAutor der Antwort swiftBoy
Für Swift 3, - habe ich erreicht das gleiche mit
InformationsquelleAutor der Antwort Lion
Versuchen Sie dies:
... statt:
Hoffe, das hilft.
InformationsquelleAutor der Antwort Pavel Kanapatski