Existe el ScrollView que permite solo el desplazamiento vertical, y el HorizontalScrollView que permite solo el desplazamiento horizontal, pero no la clase para ambos. Esto parece un déficit enorme en la interfaz de usuario de Android. ¿Algún truco para permitir esto?Android - Cómo permitir el desplazamiento horizontal y vertical
Respuesta
probar este
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="fill_parent">
<TableLayout
android:id="@+id/amortization"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TableRow
android:background="#ffff00">
<TextView
android:text="@string/amortization_1"
android:padding="3dip"/>
<TextView
android:text="@string/amortization_2"
android:padding="3dip"/>
<TextView
android:text="@string/amortization_3"
android:padding="3dip"/>
<TextView
android:text="@string/amortization_4"
android:padding="3dip"/>
<TextView
android:text="@string/amortization_5"
android:padding="3dip"/>
<TextView
android:text="@string/amortization_6"
android:padding="3dip"/>
<TextView
android:text="@string/amortization_7"
android:padding="3dip"/>
</TableRow>
</TableLayout>
</HorizontalScrollView>
</ScrollView>
Traducción en un FrameLayout es lo mejor, me parece –
Esto funciona bien, pero solo puede desplazarse horizontal o verticalmente, a la vez, y no en diagonal. Se siente inacabado, pero es fácil de implementar. – Hersker
Tengo una gran grilla de números que tengo que mostrar y esto funciona perfectamente. Si bien no puedes desplazarte diagonalmente, en realidad no es tan importante en una situación como la mía. – DiscDev
Un ejemplo con una ImageView:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView android:id="@+id/ScrollView02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
<HorizontalScrollView android:id="@+id/HorizontalScrollView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView android:id="@+id/ImageView01"
android:src="@drawable/pic"
android:isScrollContainer="true"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:adjustViewBounds="true">
</ImageView>
</HorizontalScrollView>
</ScrollView>
Fuente: http://www.android-spa.com/viewtopic.php?t=3959&highlight=scrollview+vertical+horizontal
En mi humilde opinión una pantalla que requiere tanto desplazamiento no es nada cómoda (de hecho, creo que el desplazamiento vertical no es una buena idea) pero funciona. –
Es para un juego con niveles mucho más grandes que la pantalla. Gracias amigo. –
he encontrado que es importante establecer fillViewport
porque de lo contrario las barras de desplazamiento podría aparecer en posiciones aleatorias en lugar de en la parte derecha/inferior del área de desplazamiento:
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true" >
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fillViewport="true" >
</HorizontalScrollView>
</ScrollView>
- 1. Barra de desplazamiento horizontal y vertical en Android con tablelayout?
- 2. ¿Cómo habilito el desplazamiento horizontal y desactivo el desplazamiento vertical en UIWebview?
- 3. Desplazamiento horizontal UIScrollView con gesto de desplazamiento vertical
- 4. iPhone - Anidar UIScrollViews para paginación horizontal y desplazamiento vertical
- 5. Cómo desplazamiento vertical una actividad en Android
- 6. Cuadro de desplazamiento con texto centrado (vertical y horizontal)
- 7. Desplazamiento vertical de Android para ListView dentro Desplazamiento horizontalView
- 8. Cómo horizontal y vertical center a div?
- 9. Reportlab: ¿Cómo cambiar entre vertical y horizontal?
- 10. Desplazamiento horizontal?
- 11. Widget de Android diferente orientación vertical y horizontal
- 12. ¿Cómo hacer una galería de imágenes bidimensionales con desplazamiento horizontal y vertical?
- 13. Android: ¿Cómo mostrar automáticamente la barra de desplazamiento vertical?
- 14. iPhone Tableview Usar celdas en desplazamiento horizontal no vertical
- 15. Ocultar barra de desplazamiento horizontal html pero no vertical
- 16. Posición fija - Desplazamiento horizontal
- 17. Diseño diferente para orientación horizontal y vertical android
- 18. Internet Explorer crea barra de desplazamiento horizontal para el ancho de barra de desplazamiento vertical
- 19. Android: ¿Vista de lista horizontal en la vista de desplazamiento vertical?
- 20. detener el desplazamiento horizontal en JTextArea
- 21. Diferencia entre android: orientation = "vertical" vs android: orientation = "horizontal"
- 22. PDF Ver con desplazamiento horizontal
- 23. css truco para centrar horizontal y vertical
- 24. PrintDialog con páginas Horizontal y Vertical
- 25. ¿cuál es la distribución vertical y horizontal?
- 26. Cómo deshabilitar el desplazamiento horizontal de UIWebview?
- 27. Desplazamiento horizontal - Móvil - ¿deslizar?
- 28. ¿Cómo obtener un TextView en Android tiene desplazamiento horizontal y desplazamiento automático?
- 29. Desplazamiento de desplazamiento vertical jQuery
- 30. ¿Cómo detectar el desplazamiento horizontal en jQuery?
En muchos casos, cualquier cosa que necesite tanto espacio no debería estar usando 'ScrollView' /' HorizontalScrollView'. Esos solo funcionan cuando los contenidos son bastante modestos en el consumo de memoria. En el otro extremo del espectro, considere Google Maps, que no se implementa con 'ScrollView' o' HorizontalScrollView', porque no podemos guardar mapas de todo el planeta en la RAM de una vez. Piensa detenidamente en lo que intentas tener scroll, porque es muy posible que necesites hacer algo mucho más complejo que usar 'ScrollView' y kin para trabajar en un dispositivo móvil. – CommonsWare
Mi solución a eso fue calcular qué objetos del nivel (esto es un juego) están en pantalla, y solo dibujarlos. La otra solución fue usar una vista de marco del ancho/alto de los padres y mover los objetos del nivel a medida que ocurren los eventos. El último parece que requeriría más procesamiento, pero probablemente menos RAM. ¿Tienes una recomendación? –
"Mi solución fue calcular qué objetos del nivel (esto es un juego) están en pantalla, y solo dibujarlos". - No soy desarrollador de juegos, pero parece que no necesitas 'ScrollView' y kin, ya que lo estás manejando todo por ti mismo. Simplemente observe los eventos de barrido y vuelva a dibujar su nivel en ese punto. – CommonsWare