Foros del Web » Programando para Internet » Android »

Problema con Fragment superpuestos

Estas en el tema de Problema con Fragment superpuestos en el foro de Android en Foros del Web. Hola, tengo un problema cuando paso de un Fragmen a otro Fragment, se muestran los dos a la vez. Tengo puesto un botón en un ...
  #1 (permalink)  
Antiguo 01/01/2019, 11:08
 
Fecha de Ingreso: octubre-2008
Mensajes: 38
Antigüedad: 16 años, 2 meses
Puntos: 0
Problema con Fragment superpuestos

Hola, tengo un problema cuando paso de un Fragmen a otro Fragment, se muestran los dos a la vez.

Tengo puesto un botón en un fragment, que al pulsarlo me muestra otro fragment, pero el primero no desaparece de la pantalla, se muestran los dos a la vez.

Si alguien sabe porque pasa esto, me podéis echar una mano para que solo se muestre un solo fragment ?

Este es el codigo que tengo puesto en el boton para llamar al otro fragment:

Boton.java

Código:
Public class Boton extends Fragment{
 
    Button verEsquema;
 
    public Boton() {
    }
 
    [MENTION=761448]Override[/MENTION]
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
 
        View rootView  = inflater.inflate( R.layout.boton, container, false );
 
        verEsquema = rootView.findViewById(R.id.bt_esquema);
 
        verEsquema.setOnClickListener(new View.OnClickListener()  {
            [MENTION=761448]Override[/MENTION]
            public void onClick(View view) {
                Esquema2 fragment = new Esquema2();
                FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
                transaction.replace(R.id.frame_boton, fragment);
                transaction.addToBackStack(null);
                transaction.commit();
            }
        });
 
        return rootView;
    }
}
boton.xml

Código:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
 
    <Button
        android:id="@+id/bt_esquema"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginTop="68dp"
        android:layout_marginEnd="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginBottom="8dp"
        android:text="Boton 2"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.0" />
 
    <FrameLayout
        android:id="@+id/frame_boton"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"
        android:name="com.darwindeveloper.horizontalscrollmenu.Boton">
    </FrameLayout>
 
</android.support.constraint.ConstraintLayout>

Gracias.
  #2 (permalink)  
Antiguo 04/01/2019, 10:39
 
Fecha de Ingreso: octubre-2008
Mensajes: 38
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Problema con Fragment superpuestos

Por lo menos gracias a los que han leído el post, pero nadie sabe como poder solucionar esto ?
  #3 (permalink)  
Antiguo 04/01/2019, 12:03
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 9 meses
Puntos: 1146
Respuesta: Problema con Fragment superpuestos

Yo cuando necesito separar contenidos utilizo intent para cambiar entre actividades
https://developer.android.com/traini...vity?hl=es-419

alli en la documentación viene un ejemplo con java
  #4 (permalink)  
Antiguo 05/01/2019, 12:07
 
Fecha de Ingreso: octubre-2008
Mensajes: 38
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Problema con Fragment superpuestos

Hola ArturoGallegos, pensaba que ya no me respondería nadie porque no recibo notificaciones por correo, así que gracias por responder.

No entiendo mucho, pero para pasar de una calse activity si creo que se necesita el intent, pero yo quiero pasar de una clase Fragment a otro Fragment y es donde hay que utilizar el FragmentTransaction.

Y el caso es que si que paso de un fragment a otro, pero se muestran los dos a la vez

mira el primer fragment tiene el boton, cuando lo pulso muestro otro fragment que contiene una imagen, pero como pudes ver estan los dos fragment a la vista.

https://youtu.be/oM6WIzYgYNY


Salu2.
  #5 (permalink)  
Antiguo 10/01/2019, 21:36
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 9 meses
Puntos: 1146
Respuesta: Problema con Fragment superpuestos

Ya le di una revisada y el tema de los fragment es realmente sencillo, en 30 minutos tengo todo lo necesario

Basado en mis pruebas experimentales te puedo decir que tu codigo es correcto y funciona 100% como debe de ser, lo que tienes aquí es un problema en tu lógica.

Boton 2 no es parte del fragment, esta afuera de este y abajo de el tienes el fragment tal cual aparece en tu codigo que muestras en tu primer post, el hecho de que cambie el fragment no hace que este se oculte ni mucho menos.

tus opciones son, acomodar el botton y el fragment de forma que no se empalmen, utilizando margenes o distancias fijas entre ellos.

O bien si deseas que desaparezca el botón, en lugar de fragment utiliza actividades como en el link que te deje
https://developer.android.com/traini...vity?hl=es-419
  #6 (permalink)  
Antiguo 12/01/2019, 06:49
 
Fecha de Ingreso: octubre-2008
Mensajes: 38
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Problema con Fragment superpuestos

Hola me alegra que te funcione, así que el que está metiendo la pata soy yo, y la sigo metiendo porque el código de ese link parece que es para utilizarlo en clases que extienden de un Activity, yo estoy utilizando clases que extienden de Fragment.

Tengo puesto en ese menú otro botón donde llamo a un Activity y en éste el botón desaparece, pero cuando se muestra lo que hace es tapar parte del menú.


Salu2.
  #7 (permalink)  
Antiguo 12/01/2019, 10:29
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 9 meses
Puntos: 1146
Respuesta: Problema con Fragment superpuestos

Como te he comentado no es un problema de tu codigo, este funciona bien y hace lo que se supone haga.

El problema es mas de ideas y conceptos, digamos que esta en tu cabeza, como puedes ver en este trozo de codigo, estas imprimiendo dos elementos, son separados y no depende uno del otro., si cambias el fragment por otro el boton no se ve afectado ya que no es parte de este, es totalmente independiente.
Código XML:
Ver original
  1. <Button
  2.        android:id="@+id/bt_esquema"
  3.        android:layout_width="wrap_content"
  4.        android:layout_height="wrap_content"
  5.        android:layout_marginStart="8dp"
  6.        android:layout_marginLeft="8dp"
  7.        android:layout_marginTop="68dp"
  8.        android:layout_marginEnd="8dp"
  9.        android:layout_marginRight="8dp"
  10.        android:layout_marginBottom="8dp"
  11.        android:text="Boton 2"
  12.        app:layout_constraintBottom_toBottomOf="parent"
  13.        app:layout_constraintEnd_toEndOf="parent"
  14.        app:layout_constraintStart_toStartOf="parent"
  15.        app:layout_constraintTop_toTopOf="parent"
  16.        app:layout_constraintVertical_bias="0.0" />
  17.  
  18.     <FrameLayout
  19.        android:id="@+id/frame_boton"
  20.        android:layout_width="match_parent"
  21.        android:layout_height="match_parent"
  22.        app:layout_constraintEnd_toEndOf="parent"
  23.        app:layout_constraintStart_toStartOf="parent"
  24.        app:layout_constraintBottom_toBottomOf="parent"
  25.        android:name="com.darwindeveloper.horizontalscrollmenu.Boton">
  26.     </FrameLayout>

Prueba a eliminar ese botón de allí y meterlo en el fragment que se carga al inicio.

---------------------
Ahora bien lo que yo te mencionaba es con actividades, pero son cosas distintas.

La actividad es el contenedor para tu boton y fragment, no se como lo has implementado muestra el código resultante e indica el error que te da.

Yo en tu lugar utilizaría activity en lugar de fragment, pero solo tu conoces tu proyecto y sus necesidades.

Etiquetas: app, superpuestos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:48.