Ich habe eine App, in der ich lokale HTML-Dateien in einem UIWebView rendere. Die Dateien sind jedoch manchmal groß, und mit der Standard-Scroll-Geschwindigkeit dauert es sehr lange, bis Sie zu der gewünschten Stelle gelangen. Gibt es eine Möglichkeit, die vertikale Scroll-Geschwindigkeit eines UIWebView zu erhöhen?
In iOS 5 können wir auf die Eigenschaft scrollView
von UIWebView
zugreifen.
Wenn Sie auf iOS 5+ abzielen, können Sie einfach Folgendes aufrufen:
%Vor%Suchen Sie eine Unteransicht von UIWebView, die eine UIScrollView ist, und legen Sie decelerationRate auf UIScrollViewDecelerationRateNormal fest. Dies macht das UIWebView so schnell wie ein gewöhnliches UIScrollView.
In iOS 4/5 können wir einfach die letzte Unteransicht von UIWebView verwenden.
%Vor%Der Standard brationRate von UIScrollView von UIWebView ist 0.989324, während UIScrollViewDecelerationRateFast 0,99 ist und UIScrollViewDecelerationRateNormal 0.998 ist.
Diese Methode verwendet keine private API.
Suchen Sie nach einer Unteransicht von UIWebView, die auf -setScrollDecelerationFactor reagiert: (es ist UIScroller - eine private Klasse, die die einzige Unteransicht von UIScrollView ist). Sie werden feststellen, dass für die öffentliche UIScrollView-Klasse dieselben Verzögerungsfaktoren verwendet werden:
%Vor%Beachten Sie, dass die Methode, die ich viewWithSelector: verwende, eine Methode ist, die ich in einer Kategorie von UIView definiert habe. Vermutlich, wenn UIWebView sich in Zukunft ändert, gibt meine Suche nil zurück und diese Methode wird zu einem No-Op.
Haben Sie daran gedacht, an signifikanten Grenzen # -Tags in Ihren HTML-Code einzufügen?
Sie können die native Benutzeroberfläche verwenden, um Lesezeichen oder ein Inhaltsverzeichnis für eine einfachere Navigation zu implementieren, oder einfach Links in die entsprechenden Ziele direkt in Ihrem HTML-Code einbetten.
Wenn Sie das Scrollen beschleunigen, besteht die Gefahr, dass Ihre App nicht als Standard abgelehnt wird, da dies Benutzer verwirren könnte, die gewohnt sind, mit einem Standardfeeling zu scrollen.
Tags und Links iphone scroll cocoa-touch uiwebview