2012-03-13 18 views
13

Soy nuevo en Android, y estoy buscando una lógica para la vista de cuadrícula como la aplicación pinterest (pantalla de inicio) que se ha desarrollado para i-phone. Un gran no. de las imágenes provienen del servidor que necesito mostrar de la siguiente forma con efecto de paginación, es decir, cargando imágenes en desplazamiento.Pinterest como GridView personalizado

image is here

por favor, responda si es posible revés. Estaré muy agradecido.

+0

Tengo dificultades para adaptar la vista de cuadrícula al diseño que pinterest usa en la aplicación de iPhone. ¿Alguna vez pudo usar el diseño de la cuadrícula o cualquier otro esquema de diseño para crear algo similar al diseño de pinterest en el iPhone? – rOrlig

+0

hola @Raj Kumar Yadav. puedes ayudarme? ¿Obtuviste la salida como la misma imagen en Android? –

Respuesta

3

Si desea realizar la carga de imagen en desplazamiento entonces será similar a la lista View.First guardar todos los datos de WS URL a continuación, cargar en la demanda Ahora

adaptador Commonsware sin fin para Listview, puede integrar con GridView también

EndLessAdapter

Otra forma es poner sus puntos de vista de cuadrícula en una ViewFlipper y luego dar la vuelta con una animación.

Uso setInAnimation() y setOutAnimation() para establecer las animaciones y voltear las páginas con shownext() y showPrevious()

0

Comprobar: Staggered GridView

El StaggeredGridView permite al usuario crear un GridView con desigual filas similares a como se ve Pinterest. Incluye propio OnItemClickListener y OnItemLongClickListener, selector y restauración de posición fija.

3

Crear layout así como seguir

<ScrollView...> 
<LinearLayout.... 
    android:id="@+id/linear1" 
    orientation="horizontal"> 

    <LinearLayout.... 
    android:id="@+id/linear2" 
    android:layout_weight="0.33" 
    orientation="vertical"> 

    <LinearLayout.... 
    android:id="@+id/linear3" 
    android:layout_weight="0.33" 
    orientation="vertical"> 

    <LinearLayout.... 
    android:layout_weight="0.33" 
    orientation="vertical"> 

</LinearLayout> 
</ScrollView> 

Ahora añadir su ImageView dinámicamente en los diseños

linear1 = (LinearLayout) findViewById(R.id.linear1); 
linear2 = (LinearLayout) findViewById(R.id.linear2); 
linear3 = (LinearLayout) findViewById(R.id.linear3); 

for(int i=0;i<n;i++) 
{ 
    ImageView iv = new ImageView(this); 
    iv.setImageResource(R.id.icon); 

    int j = count % 3; <---- 
    if(j==0) 
     linear1.addView(iv); 
    else if(j==1) 
     linear2.addView(iv); 
    else 
     linear3.addView(iv); 
} 
0

Esto es cuestión de edad, pero para aquellos que tienen un problema similar:

manera más fácil lograr este estilo de diseño es utilizar RecyclerView con StaggeredGridLayoutManager, como este:

En la otra parte de la pregunta (paginación), es mejor recibir las imágenes en fragmentos (por ejemplo, 50 imágenes por solicitud) y cuando el usuario se desplace (llega al final), cargue más.

Cuestiones relacionadas