2012-11-19 26 views
6

Sto provando a scorrere una pagina Web in modo programmatico ma sto riscontrando alcuni problemi. webView.setScrollY() non mi dà un'animazione un webView.flingScroll() sembra comportarsi in modo difforme a seconda della durata della pagina. Qual è il modo migliore per farlo?Android WebView smooth scroll

risposta

1

È possibile utilizzare il metodo webView.scrollTo (x, y). Tuttavia, questo scorrerà all'istante.

Non c'è alcun metodo disponibile per WebView per scorrere con l'animazione. Se proprio devi farlo, metti la WebView in ScrollView e poi puoi usare per es. smoothScrollBy ecc

+0

Nesting viste scorrevoli non è l'idea migliore, offre tutti i tipi di problemi se non si gestisce correttamente – user1806772

7

'possibile muoversi con ObjectAnimator fornendo attuale posizione di visualizzazione web come questa API 11+

ObjectAnimator anim = ObjectAnimator.ofInt(webView, "scrollY", webView.getScrollPositionY(), 0); 
anim.setDuration(500).start(); 
+2

Ottima risposta, ha funzionato per me. L'unica cosa è che non esiste un metodo come getScrollPositionY(), dovresti usare webView.getScrollY() – Rosenpin