In der Android-App von Netflix gibt es ein WebView, das fast den gesamten App-Bereich abdeckt. Wenn Sie eine Zeile von links nach rechts ziehen, wird nur diese Zeile geblättert, und zwar mit einem schönen inertialen Scrolling. Wenn Sie nach oben oder unten ziehen, wird die gesamte Seite nach oben und unten verschoben.
Ich habe es geschafft, diese Funktionalität auf iOS zu duplizieren (sowohl in einem eigenen WebView als auch in Safari), aber nicht auf Android. Auf Android-Geräten ist alles, was ich mache, entweder mühsam langsam zu scrollen, oder Sie müssen sehr vorsichtig sein, vertikal zu scrollen, um durch Berühren im Hintergrundbereich zwischen Zeilen zu beginnen. Keine von beiden ist akzeptabel. Natürlich möchte ich die scrollende Animation nicht in Javascript machen, da das zu langsam ist.
Ich weiß, dass Netflix es mit einem WebView macht, also ... was ist der Trick, den sie verwenden?
Ich habe versucht, die CSS-Eigenschaften (für die Zeile div) zu verwenden:
%Vor%ohne Erfolg.
Wenn Sie das css Android-kompatible für Ihr spezielles WebView nicht bekommen können, warum erstellen Sie nicht serverseitige Funktionalität, die nur angeforderte Zeilen in separate WebViews ausgibt?
Ich würde folgendes tun:
* Fragen Sie den Webserver ab, um festzustellen, wie viele Zeilen vorhanden sind.
* Fügen Sie programmgesteuert die Anzahl der Zeilen hinzu, die der Webserver angibt. Wenn der Server beispielsweise meldet, dass fünf Zeilen vorhanden sind, erstellen Sie fünf WebViews mit jeweils eigenen URL-Parametern (Beispiel: Das erste WebView fragt mydomain.com/wv?row=1
ab).
* Setzen Sie jede WebView-Zeile in eine HorizontalScrollView und fügen Sie alle HorizontalScrollViews in eine VerticalScrollView ein.
* Wechseln Sie bei einer URL-Änderung zu einem ganzseitigen WebView, in dem die Details der angeklickten Kachel angezeigt werden.
* Bei gedrückter Taste, schließen Sie die ganze Seite WebView und laden Sie die Zeilen neu.
Nicht die sauberste Lösung, aber sollte gut funktionieren.
Netflix könnte die benutzerdefinierte Gestenerkennung verwendet haben und gesehen haben, ob die Bildlaufleiste horizontal, dann vertikal oder mehr vertikal als horizontal war, und je nachdem, wie weit die Bildlaufleiste entfernt war, scrollt das Webbild horizontal oder vertikal
Tags und Links android android-webview uiwebview