Acceder

Ver la Versión Completa : [ CONSULTA ] Scroll o parecido


pablogarcia013
18/04/13, 09:52:46
Buenos dias! a ver si me echais un cable!

Quiero implementar una especie de scroll (no se si es un scroll al que hay que especificar algo o se llama de otra manera) que es un scroll pero que en vez de tener una barra que te dice el desplazamiento, tiene una serie de puntos y el movimiento no es como el de un scrollview normal si no que este va como por "pantallas", no se si me explico bien pongo un ejemplo:

tengo paquetes de 16 imagenes por ejemplo y las tengo en columnas y filas de tal manera que tengo 4x4 imagenes en cada paquete y quiero que cada vez que mueva el scroll(o el elemento que sea) se muestre cada paquete por separado (algo parecido a la pantalla inicial de android con las aplicaciones que tienes)

He estado buscando pero no encuentro como hacerlo.

Muchas gracias!

kriogeN
18/04/13, 10:12:40
ViewPager

Si compilas para Android 4.0 lo tienes ya directo, si lo haces para versiones anteriores necesitarás el Android Support V4.

pablogarcia013
18/04/13, 10:27:41
Muchas gracias! voy a probar

pablogarcia013
19/04/13, 10:12:37
He estado buscando tutoriales de como hacerlo pero no encuentro ninguno claro, hay algunos en los que tengo que crearme adaptadores otros no..y realmente me he hecho un lio, alguien me puede guiar un poco de como utilizar ViewPager?

Me creo en el xml un ViewPager y a partir de ahi? como le añado vistas?

muchas gracias!

kriogeN
19/04/13, 12:20:15
Introduces los Layout consecutivamente en el ViewPager, cada uno será una página:


<android.support.v4.view.ViewPager
android:id="@+id/paginador"
android:layout_width="match_parent"
android:layout_height="match_parent">

<LinearLayout ...........................
</LinearLayout>

<RelativeLayout...........................
</RelativeLayout>
</android.support.v4.view.ViewPager>


Así hasta el infinito, cuantos más Layouts metas mas páginas tendrá.

Pero también tendrás que usar un PagerAdapter para instanciar a cada Layout de cada página.

pablogarcia013
19/04/13, 12:37:14
Gracias por contestar!

Los layouts que meto son relativeLayout, y lo hago desde codigo,
hago lo siguiente:


pager = (ViewPager)findViewById(R.id.viewPagerId);
MyFragmentPagerAdapter adapter = new MyFragmentPagerAdapter(getSupportFragmentManager() );

String[] lista = this.fileList();
for(int z=lista.length-1;z>=0;z--){
/**
*Aqui dentro creo el RelativeLayout que son 2 ImageButton
*A este layout le llamo caja
*
**/
adapter.addFragment(new Fragmentos(caja));
}
pager.setAdapter(adapter);



Cuando ejecuto parece que todo va perfecto me aparecen los elementos que quiero y los voy arrastrando pero cuando voy en un sentido y quiero volver al fragmento anterior me peta la aplicacion, el error que pone es el siguiente: The specified child already has a parent. You must call removeView() on the child's parent first.

Realmente no se que puede pasar...

Muchas gracias otra vez!