Llamar a setContentView () varias veces

¿Hay una manera de llamar a setContentView (id) varias veces con id diferente durante una actividad para reproducir diferentes vistas o debo absolutamente tener que iniciar una nueva actividad?

Por comentario de Austyn, me las arreglé para encontrar algunas orientaciones sobre cómo usar ViewFlipper para lograr esto en otro puesto (ver la respuesta marcada arriba aquí .)

Si no quieres usar ViewFlipper, encontré un buen ejemplo de cómo cambiar entre diseños en la misma vista aquí :

XML:

<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android"> <ImageView android:src="@drawable/icon" android:scaleType="fitCenter" android:layout_height="fill_parent" android:layout_width="fill_parent"/> <TextView android:text="Learn-Android.com" android:textSize="24sp" android:textColor="#000000" android:layout_height="fill_parent" android:layout_width="fill_parent" android:gravity="center"/> </FrameLayout> 

Código:

 private void SwitchLayout2() { RelativeLayout Layout1 = (RelativeLayout)findViewById(R.id.layout1); RelativeLayout Layout2 = (RelativeLayout)findViewById(R.id.layout2); // Enable Layout 2 and Disable Layout 1 Layout1 .setVisibility(View.GONE); Layout2.setVisibility(View.VISIBLE); } private void SwitchLayout1() { RelativeLayout Layout1 = (RelativeLayout)findViewById(R.id.layout1); RelativeLayout Layout2 = (RelativeLayout)findViewById(R.id.layout2); // Enable Layout 1 & Disable Layout2 Layout1.setVisibility(View.VISIBLE); Layout2.setVisibility(View.GONE); } 

No, no puedes llamarla varias veces fácilmente. ViewFlipper eliminar completamente todas las vistas y, a continuación, inflar el nuevo diseño o utilizar un ViewFlipper (o FrameLayout ) para cambiar entre diferentes vistas.

En una nota lateral, esta pregunta se ha hecho antes, aunque no pude encontrarlo inmediatamente.

Puede probar esto de su actividad:

 getWindow().addContentView(View, ViewGroup.LayoutParams); 

Las dos vistas de contenido serán una encima de la otra. Pero, no hay manera directa de eliminar una cierta vista añadida de esta manera.

También tenga en cuenta que al llamar a setContentView después de la última llamada, se eliminarán todas las vistas de contenido añadido anterior.

  • Android UI - Android vista de desplazamiento horizontal
  • Fragmento no se elimina visualmente
  • ¿Qué componente de visualización utiliza Google Plus App (Stream)?
  • Java.lang.IllegalStateException: ScrollView puede alojar sólo un hijo directo
  • Imágenes borrosas en el navegador de Android y WebView
  • ¿Cómo puedo obtener botones de acción con diseños personalizados para que se llamen como botones de acción estándar en Android 3.0+
  • ¿Cómo hacer que las aplicaciones de Android 4.0 sean compatibles con versiones anteriores?
  • Diseño como tarjetas en android
  • Style Android SearchView Desplegable popup
  • Balanceo horizontal en stackview
  • El fondo de pantalla de Android también se desliza hacia la izquierda y la derecha cuando desliza la pantalla de inicio
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.