Die UIWebView hat u.a. zwei unschöne Eigenschaften: Wird über den sichtbaren Bereich hinausgescrollt, werden an den Rändern Schatten eingeblendet, die die Begrenzung des eigentlichen Inhalts darstellen sollen.
Außerdem scrollt eine UIWebView deutlich langsamer als eine gewöhnliche UIScrollview.
Diese beiden Effekte kann man mit relativ einfachen Mitteln beheben.
Edit sagt: Ab iOS 7 sind diese Anpassungen nicht mehr nötig, da standardmäßig schon enthalten. 😉
Bei den Schatten handelt es sich um Bilder (UIImageView), die als Subview im Scrollview der UIWebview enthalten sind. Diese werden einfach in einer Schleife auf unsichtbar gesetzt.
Wichtig: Die Schleife sollte in viewDidLoad oder viewWillAppear eingebaut werden, und zwar bevor eventuell andere Bilder in die Scrollview eingefügt werden, damit diese nicht mit ausgeblendet werden.
// Schatten enfernen for (UIView* shadowView in [myWebView.scrollView subviews]){ if ([shadowView isKindOfClass:[UIImageView class]]) { [shadowView setHidden:YES]; } }
Für schnelleres Scrollen wird die Verzögerungsrate der Scrollview auf normal gesetzt.
// Scrollgeschwindigkeit anpassen myWebView.scrollView.decelerationRate = UIScrollViewDecelerationRateNormal;