31

Attualmente sto costruendo una galleria orizzontale di video.ViewPager Android con pagine precedenti e successive visibili?

Mi piacerebbe fare qualcosa di simile con un solo video centrato e parte del video precedente e successivo: enter image description here

ho optato per un Gallery, ma i suoi limiti mi ha fatto cercare qualcos'altro. Mi piacerebbe mostrare un indicatore di pagina ed è piuttosto difficile da implementare usando una galleria.

La seconda opzione era di andare a ViewPager dalla libreria di compatibilità Android. Ho trovato un modo per implementare uno page indicator su di esso. Ma ora, come mostrare parzialmente le pagine sinistra e destra?

+0

vedere questo. ho avuto problemi simili e questo mi aiuta.http: //stackoverflow.com/questions/13194666/how-to-set-viewpager-size? answertab = voti # tab-top – user1974235

risposta

42

Ho utilizzato un margine di pagina negativo per mostrare parzialmente la pagina successiva e quella precedente. La proprietà bordo dissolvenza può essere usato per fare pagina precedente/successiva dissolvenza:

ViewPager examplePager = (ViewPager) findViewById(R.id.exampleView); 
examplePager.setPageMargin(-50); 
examplePager.setHorizontalFadingEdgeEnabled(true); 
examplePager.setFadingEdgeLength(30); 

Le ultime pacchetto di supporto (revisione 4, ottobre 2011) è necessario anche per questo al lavoro

+0

Questo fa sì che le pagine abbiano un gradiente bianco sul a sinistra, ma lo schermo a sinistra non è ancora visibile, su un Android 2.2 utilizzando Android-support-v4-r7. Su quale dispositivo hai provato questo? – marmor

+0

@marmor L'ho provato su molti dispositivi, molti dei quali con Android 2.3.3, alcuni Android 2.2 e persino alcuni dispositivi Android 2.1. Non ho avuto problemi su nessuno dei dispositivi. Un margine di pagina positivo funziona come previsto? Forse le tue viste non hanno uno sfondo trasparente, quindi la vista corrente potrebbe sovrapporsi alle viste adiacenti? – Konrad

+0

Ho provato questo su un HTC Hero 2.2, ho un layout piuttosto non standard in cui il frammento sinistro agisce come una barra di azione nascosta, quindi forse questa soluzione non ha funzionato solo nel mio caso. Ho finito per risolvere questo problema applicando un'imbottitura al frammento giusto, grazie! – marmor

Problemi correlati