android: usando ActivityGroup para integrar actividades
Im en la fase de conceptualización / diseño de la construcción de una aplicación y he golpeado un poco de un obstáculo. Esencialmente yo estaba buscando una manera de integrar una actividad en la interfaz de usuario de otro similar a cómo un TabHost / TabActivity. Habría una ventana en la parte superior de la pantalla que contendría la otra actividad, y por debajo de esa sería botones y controles que son independientes de la actividad anterior y siempre debe ser visible. El usuario sería capaz de navegar de una actividad a otra en la ventana sin causar ningún cambio a los controles de abajo.
Mientras que miraba en el asunto corrí a través de ActivityGroup, que parecía que sería útil, pero ¿cómo lo implementaría? ¿Alguien tiene experiencia con ActivityGroup o tiene otra idea?
- Cómo cambiar las pestañas programatically en android de fragmento?
- Lengüetas verticales en Android
- Mostrar una barra de progreso en una ficha secundaria hasta que el WebView se cargue
- FragmentTabHost & Fragments - ¿Cómo puedo pasar datos entre pestañas?
- Problema con el diseño de interfaz de usuario TabHost
- Android usando viewPager vs usando tabhost
- No se pudo crear el contenido de la pestaña porque no se pudo encontrar la vista con id -1 Error XML en Android Eclipse?
- Actividad de Android Refresh cuando vuelve a ella
- OnActivityResult no llama al Fragmento
- Insignia en Android TabHost
- Android, la intención no funciona?
- ¿Cómo configurar la altura de la barra de herramientas de Android?
- Comportamiento de menú de opciones extraño en Android TabActivity
Sí, implementarás un ActivityGroup, que será el contenedor de tus otras Actividades. Cuando el usuario hace clic en uno de los botones, obtendría una referencia al LocalActivityManager y lo usaría para iniciar e integrar la actividad interna. Algo como esto:
LocalActivityManager mgr = getLocalActivityManager(); Intent i = new Intent(this, SomeActivity.class); Window w = mgr.startActivity("unique_per_activity_string", i); View wd = w != null ? w.getDecorView() : null; if(wd != null) { mSomeContainer.addView(wd); }
Tenga en cuenta que utilizar este método puede ser bastante complicado, ya que a menos que el enfoque esté correcto, presionar los botones de hardware (como el botón de menú) sólo activará eventos en el ActivityGroup en lugar de la actividad interna. Tienes que encontrar alguna forma de enfocar la actividad interna después de agregarla a la vista de contenedor, momento en el que el even ocurrirá en la actividad interna y se propagará a la actividad del contenedor.
Se puede hacer, lo he hecho … y funciona. Es sólo un poco más complicado de lo que creo que debería ser.
De todos modos, conseguí la mayor parte de esta información mirando el código de TabHost, que se puede encontrar aquí
Compruebe el siguiente enlace
http://ericharlow.blogspot.com/2010/09/experience-multiple-android-activities.html
Su la solución para mí. Espero que te ayude también
- Identificar el tipo de patrón de regex
- ¿Por qué nuestro servidor recibe las solicitudes de método CONNECT de nuestra aplicación android mientras no la usamos en nuestro código?