¿Por qué se puede hacer clic en un botón cuando hay otro diseño que lo superpone?
Tengo un Layout que está relativamente bien posicionado. En él conseguí (ahora) dos cosas:
- Un botón clicable que está enlazado a un evento onClick
- Un LinearLayout que se superpone a la pantalla completa
Aunque el LinearLayout está superponiendo el botón, el botón todavía se puede hacer clic. Incluso si hay otro botón en la superposición.
- Vistas superpuestas de Android y OnClick
- Evento de clic transferido a la siguiente Actividad iniciada
- GetCheckedRadioButtonId () devuelve int inútil?
- Botón creado dinámicamente de Android: setOnClickListener no funciona
- Diferencia en listview.setOnItemClickListener y row.setOnClickListener
¿Cómo puedo evitar esto?
- Cómo obtener OnClick () de los botones agregados mediante programación?
- Hacer diferencias entre setOnClickListener y setOnTouchListener
- Las vistas de Android amplían la animación
- Método onClick no se llama en Android
- Evitar que DialogFragment se rechace cuando se hace clic en el botón
- distinguir un golpe y hacer clic en android (pasar el evento a otra vista si es un golpe)
- Cómo desmarcar un elemento en gridview en segundo clic en android?
- cómo hacer clic en el botón de acción flotante en un fragmento?
Las vistas superpuestas (y diseños) tienen que implementar un oyente onClick para capturar el evento, de lo contrario el evento se distribuye en las vistas de subyacente.
Bueno, encontré un enfoque que funciona junto con la animación:
El Layout (abreviado):
<RelativeLayout ...> <Button ... /> <LinearLayout android:id="@+id/underlay" android:background="#00ffffff" /> <LinearLayout android:id="@+id/overlay" ... /> </RelativeLayout>
Ahora cuando Fading In "overlay" parece ser el mejor tener un invisible "underlay" que se pone inmediatamente a VISIBLE:
LinearLayout underlay = (LinearLayout)findViewById(R.id.underlay); underlay.setVisibility(View.VISIBLE); underlay.setOnClickListener(...); //now animate the overlay