que tienen una galería con varias imágenes a pantalla completa. Quiero limitar el gesto arrojado para avanzar solo una imagen a la vez (como la aplicación HTC Gallery). ¿Cuál es la forma correcta/más fácil de lograr esto?¿Cómo puedo limitar la aventura en la galería de Android a solo un artículo por aventura?
Respuesta
simplemente anular la Galería onFling()
método del widget y no llame al método de la superclase onFling()
.
Esto hará que el galería de antemano un elemento por golpe.
¡Excelente! Exactamente lo que estaba buscando. –
que parece lo suficientemente simple. ¿Cómo funciona? – njzk2
Para ser precisos, debe devolver falso en el método reemplazado. –
no pude encontrar ninguna manera de limitar el desplazamiento, pero resuelto el problema de la aplicación/adaptación con cierto éxito este código: http://permalink.gmane.org/gmane.comp.handhelds.android.devel/101327
implementa una galería con "aventura"
Tengo una solución, que, aunque no garantiza como máximo un avance, es extremadamente simple (y probablemente hace lo que haría manualmente en el código): simplemente disminuya la velocidad-x en el parámetro onFling. Es decir, anular el onFling simplemente tener este aspecto:
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
return super.onFling(e1, e2, velocityX/4, velocityY);
}
mejor,
Michael
Esta es una buena, que puede reducir su velocidad con un poco de animación: D ¿Te gusta/2,/3 –
que tenía el mismo requisito y acabo de descubrir que se deslizará un solo elemento por aventura si Voy a regresar falso.
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
return false;
}
ejemplo de código para responder a la pregunta: ¿
public class SlowGallery extends Gallery
{
public SlowGallery(Context context, AttributeSet attrs, int defStyle)
{
super(context, attrs, defStyle);
}
public SlowGallery(Context context, AttributeSet attrs)
{
super(context, attrs);
}
public SlowGallery(Context context)
{
super(context);
}
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY)
{
//limit the max speed in either direction
if (velocityX > 1200.0f)
{
velocityX = 1200.0f;
}
else if(velocityX < -1200.0f)
{
velocityX = -1200.0f;
}
return super.onFling(e1, e2, velocityX, velocityY);
}
}
Creo que debe ser: else if (velocityX <-1200.0f) –
que acaba de guardar mi día !!!! ¡Un millón de gracias! – TharakaNirmana
Gracias Marco, He actualizado el código –
Hola enfrentó mismo problema, he resuelto problema mediante el siguiente lógica.
1-> Crear Una clase de esa clase Debería extender la Galería
2-> y Anular el método de Vuelo.
véase a continuación Código:
package com.sra;
import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.widget.Gallery;
public class GallView extends Gallery{
public GallView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
// TODO Auto-generated constructor stub
}
public GallView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
}
public GallView(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
return false;
}
}
uso esta clase en XML como una galería:
<com.sra.GallView
android:id="@+id/Gallery01"
android:layout_width="fill_parent"
android:layout_height="250dip" >
</com.sra.GallView>
lo usé. Esta funcionando. ¿Ahora cómo puedo hacer que sea una galería interminable? Quiero decir ... primera imagen después de la última imagen ... –
- 1. Android: carga lenta en la Galería
- 2. No se puede obtener la aventura horizontal en un ScrollView dentro de un ViewFlipper para crear
- 3. Podemos controlar la posición final de una aventura en un ListView
- 4. Elegir un motor de juego en 2D para un simple juego de aventura estilo Zelda
- 5. dojo.dnd un artículo a la vez solo
- 6. ¿Cuál es la mejor manera de almacenar datos de área para una aventura de texto?
- 7. Android obtener solo la imagen de la galería
- 8. ¿Cómo puedo filtrar solo imágenes y videos en la Galería de Android?
- 9. Android: ¿Animación en la vista de galería?
- 10. Artículo de Android ActionBar con solo texto
- 11. ¿Cómo limitar el acceso a la página solo a localhost?
- 12. Android - Buscar artículo Por ID
- 13. Estructura de la aplicación de Android: DLC a través de la facturación en la aplicación
- 14. Galería de texto en Android?
- 15. ¿Cómo puedo recuperar la ruta desde una imagen en la galería de Android?
- 16. Artículo expandible en la lista en Android
- 17. Recibo un intento ACTION_SEND de la Galería
- 18. cómo elegir solo un artículo de un generador (en python)?
- 19. ¿Cómo puedo crear un 'pulso' al igual que la interfaz de usuario para una aplicación Android
- 20. android recoger imágenes de la galería
- 21. Cómo puedo exportar artículos a archivos csv por artículo
- 22. Galería de fotos en Android
- 23. ¿Cómo puedo limitar Parallel.ForEach?
- 24. ¿Cómo puedo actualizar la Galería después de insertar una Imagen en Android?
- 25. ¿Puedo limitar la altura de WPF TextBlock a dos líneas?
- 26. obtener la ruta de una carpeta de galería en Android
- 27. ¿Cómo puedo limitar la memoria adquirida con `malloc()` sin limitar también la pila?
- 28. Android: ¿una galería vertical?
- 29. Cómo limitar la aplicación iOS en la tienda a 4S y iPad 3 solo
- 30. Android: excepción de falta de memoria en la Galería
Aquí hay otra respuesta posible! http://stackoverflow.com/questions/2373617/how-to-stop-scrolling-in-a-gallery-widget?lq=1 – Lunf