Android – Actividades vs Vistas

Estoy trabajando en una aplicación de Android que tiene varias pantallas que el usuario tendrá que navegar entre y estoy curioso de lo que son las mejores prácticas al cambiar entre esas pantallas. Estoy dividido entre crear una nueva actividad para cada pantalla y simplemente cambiar la vista (setContentView (R.layout.whatever)). Las pantallas comparten al menos algunos valores variables, así que estoy inclinado a cambiar las vistas y utilizar las variables de nivel de clase, pero me preocupa que una sola actividad se vuelva muy grande y confunda con la lógica para múltiples pantallas en un solo archivo. Me gustaría mantener el código limpio y separado, pero tampoco quiero pasar varias variables entre las vistas si no es necesario.

Al ser nuevo en el desarrollo de Android, espero que algunos miembros más experimentados de la comunidad puedan compartir sus pensamientos y decirme la mejor manera de manejarlo.

¡Gracias!

Nota: No estaba pensando en usar un viewflipper. Mi pensamiento era utilizar un evento de clic de botón y luego llamar a setContentView () a una nueva vista de la página que quería traer a continuación.

Ejemplo: mi aplicación se inicia con R.layout.main como su vista. El usuario hace clic en el botón Ayuda y llama a un método que ejecuta setContentView (R.layout.help); Para mostrar la pantalla de ayuda en lugar de cambiar a una actividad de ayuda.

2 Solutions collect form web for “Android – Actividades vs Vistas”

Usted debe utilizar una actividad por pantalla, ya que esto hará el mejor uso de la estructura y permitir que el sistema operativo para eliminar selectivamente las pantallas si las cosas se apretan.

Si usted tiene una sola actividad y los recursos se apretan el OS tiene dos opciones; Matar todo o no matar nada, y si el usuario no está usando su aplicación, es más probable que va a matar a todo.

Si utiliza una Actividad por pantalla, el sistema operativo puede anular algunas de las pantallas que el usuario no ha visitado durante un tiempo, al tiempo que permite que otros permanezcan activos, lo que permite al usuario volver a ellos rápidamente.

En cuanto a compartir variables y valores, puede usar la base de datos SQLite o las tiendas SharedPreferences para distribuirlas si están ampliamente compartidas o utilizar los métodos putExtra en Intent si sólo son útiles de una pantalla a la siguiente.

Si tiene variables que va a reutilizar, haga una clase base para ellas, que extenderá.

Esta puede ser una actividad personalizada que extiende Activity .

Por lo que puedo decir tienes que crear actividades separadas para cada vistas, sólo una situación pocos pueden ser manejados por viewflippers.

  • Tipo de letra personalizado en el título de la pestaña de ActionBar
  • ActionBar Tabs con fragmentos en rotación
  • Diseño de aplicaciones de Android: derecho dividido entre actividades, servicios e hilos?
  • Comenzando en una nueva línea en el emulador (proyecto Android Eclipse)
  • Eliminar salto de línea en TabLayout
  • ¿Cómo puedo cambiar la alineación inicial de Android Snackbar de abajo hacia arriba?
  • Cómo cambiar la sangría de los elementos del submenú en un NavigationView?
  • ¿Cómo puedo hacer que la edición de EditText suceda en modo de pantalla completa?
  • Cómo diseñar o diseñar correctamente un cajón de navegación de Android
  • ¿Cómo puedo mostrar mi diseño de desplazamiento por encima del teclado?
  • Android: ¿cómo tener este tipo de selección de tiempo?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.