Fragmento sobre otro fragmento

Cuando #77000000 un fragmento (que es pantalla completa con fondo #77000000 ) sobre otro fragmento (llamémoslo principal), mi fragmento principal todavía reacciona a los clics (podemos hacer clic en un botón aunque no lo veamos).

Pregunta : ¿cómo evitar los clics en el primer fragmento (principal)?

EDITAR

Por desgracia, no puedo ocultar fragmento principal, porque estoy utilizando fondo transparente en el segundo fragmento (por lo que el usuario puede ver lo que se encuentra detrás).

5 Solutions collect form web for “Fragmento sobre otro fragmento”

Establezca la propiedad clickable en la vista del segundo fragmento como true. La vista capturará el evento para que no se pase al fragmento principal. Así que si la vista del segundo fragmento es un diseño, este sería el código:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" /> 

La solución es bastante simple. En nuestro segundo fragmento (que se superpone a nuestro fragmento principal) sólo tenemos que coger evento onTouch :

 @Override public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstance){ View root = somehowCreateView(); /*here is an implementation*/ root.setOnTouchListener(new View.OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { return true; } }); return root; } 

Esto suena como un caso para DialogFragment. Usa la rueda vieja.

Lo que u puede hacer es u puede dar un clic en blanco para el fragmento anterior del diseño mediante el uso de propiedad onClick a la disposición de los padres de ese fragmento principal y en la actividad se puede crear una función doNothing(View view) y no escribir nada en ella. Esto lo hará por usted.

La mejor manera es usar FrameLayout lo estoy usando para el fragmento así que ninguna necesidad de declarar fragmentos en otro Xml

 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:background="@color/colorPrimary" tools:context="com.example.sumedh.fragmentpractice1.MainActivity"> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/editText" android:layout_gravity="center"/> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="bottom" android:id="@+id/BtnNext"/> </FrameLayout> 
  • Fragmento isInLayout devuelve false
  • ListFragment vs ListActivity - ¿Cuál usar?
  • ViewPager dentro de Fragmento pierde su contenido cuando se vuelve a mostrar el fragmento
  • La mejor manera de cambiar entre dos fragmentos
  • SharedElment transition usando fragmentos que no están en transición
  • OnCreate llamado después onActivityResult cuando elijo la imagen de la galería
  • Android cómo mostrar DatePicker en Fragmento?
  • Android - Cómo cambiar dinámicamente el diseño del fragmento
  • Añadir vista a un fragmento dinámicamente en Android?
  • Android Determina si se debe usar un diseño de fragmentos múltiples
  • Pasar datos de Actividad a Fragmento usando Otto
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.