Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android


 
Herramientas
  #1  
Viejo 09/12/15, 20:47:24
Avatar de androizado
androizado androizado no está en línea
Miembro del foro
Mensajes: 191
 
Fecha de registro: dic 2012
Mensajes: 191
Modelo de smartphone: Nexus 5
Versión de ROM: 5.0.1 Lollipop
Tu operador: Vodafone
Mencionado: 0 comentarios
Tagged: 0 hilos
Problema con scroll en ListView

Hola estoy teniendo un problema implementando un scroll automático en un listView horizontal.

El código es el siguiente:

Código:
for (int i = 0; i <= count; i++){
      ItemListView obj = ((ItemListView) getTablaTiempos().get(i));
      if(segundos == obj.getTime()){
             // Movemos carrousel a su posición
             int offset = 0;
             if(i > 0 || i < count){
                  offset = 70;
             }
   
             twoWayView.smoothScrollToPositionFromOffset(i, offset, 1500);
       }
}
Explico variables:
segundos: son los segundos que marca un crono mediante un Timer. (el cual se incrementa de 1 segundo)
obj.getTime(): es el tiempo en el que la listView deberá moverse/mostrar el objeto que se muestra en la posición i del listView.

El offset es cero porque si es el primero o último al que debo de mover el scroll no tendrá offset y si es el caso de que la vista está entre el primero y el último le doy un offset para que se quede cómo la imagen que adjunto.

El problema que tengo es el siguiente: ListView con 5 posiciones A(5 segundos), B(20 segundos), C(30 segundos), D(45 segundos), E(60 segundos).

Si yo no hago touch en la listView todo me va correctamente. Pero si por ejemplo voy por el segundo 10 y hago touch y me voy a la posición 4 que es la E. Cuando llega al segundo 20 que debe de mostrar B no lo hace bien, se queda el offset pillado y el scroll algunas veces va a trompicones. Pero si ya no vuelvo hacer touch el solo vuelve hacerlo bien, tal como adjunto en la imagen.

Uso la librería twoWayView para el listView horizontal. Si tenéis una manera más sencilla de hacerlo o me podéis decir en que estoy fallando sería de gran ayuda.

Gracias de antemano por la ayuda. Espero haberme explicado correctamente.
Imágenes Adjuntas
Tipo de Archivo: png scrollListView.png (6.4 KB, 10 visitas)

Última edición por androizado Día 11/12/15 a las 17:29:20
Responder Con Cita


  #2  
Viejo 09/12/15, 21:28:26
Avatar de kriogeN
kriogeN kriogeN no está en línea
Colaborador/a
Mensajes: 4,637
Compra y venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Versión de ROM: CM13 - CM 11
Tu operador: Vodafone
Mencionado: 60 comentarios
Tagged: 3 hilos
No termino de entender exactamente lo que quieres hacer, creo que quieres hacer un foto paginador automático como tienen algunas webs.

Si es eso creo que te estás complicando mucho, puedes usar un CountDownTimer, y que en cada onTick vaya a la posición que le corresponda. Puedes ponerle un tiempo considerablemente grande al Finish para que "nunca" se ejecute, o volver a hacer un start en el onFinish() para que se vuelva a ejecutar.

Y en cuanto al ListView horizontal, te aconsejo que migres a RecyclerView. Es la forma que tiene Google de dar soporte a los ListView horizontales y además con reciclado de vista. Otra cosa buena es que si quieres que el listado mañana sea vertical sólo tienes que cambiar 1 línea, o si quieres que sea un Grid lo mismo.
Responder Con Cita
  #3  
Viejo 09/12/15, 22:05:34
Avatar de androizado
androizado androizado no está en línea
Miembro del foro
Mensajes: 191
 
Fecha de registro: dic 2012
Mensajes: 191
Modelo de smartphone: Nexus 5
Versión de ROM: 5.0.1 Lollipop
Tu operador: Vodafone
Mencionado: 0 comentarios
Tagged: 0 hilos
Si, por si sirve de ejemplo mi idea es cómo las listas horizontales que tiene ahora Google play. Adjunto imagen. Pero que cada cierto tiempo vaya cambiandosé. El recyclerview no lo conocia he estado viendo intentaré tirar por ahí.
Imágenes Adjuntas
Tipo de Archivo: jpg IMG_20151209_220437.jpg (74.6 KB, 8 visitas)
Responder Con Cita
Respuesta

Estás aquí
Regresar   HTCMania > Todo sobre Android > Programación y Desarrollo para Android

Herramientas

Reglas de Mensajes
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Las caritas están On
Código [IMG] está On
Código HTML está Off

Saltar a Foro



Hora actual: 06:24:01 (GMT +1)

Cookies settings
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.
 
HTCMania: líderes desde el 2007