Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Cómo pasar el evento onClick a su padre en Android?

Tengo un TextView en una disposición cuál fondo es un selector. Y el texto de TextView se establece en Spanned de HTML. Entonces fijé el TextView con el LinkMovementMethod.

Ahora, cuando toco el TextView, el evento de clic no se envía a su diseño padre para activar el selector.

  • Listview con el encabezado de sección android
  • ¿Cómo detectar cuándo se ha establecido la conexión WIFI en Android?
  • Pasar un objeto JavaScript usando addJavascriptInterface () en Android
  • No se puede normalizar la ruta de acceso para el archivo 'E: \ WorkSpace \ mapdemo \ app \ build \ intermedios \ mockable-Google Inc.:Google APIs: 21.jar'
  • ¿Cómo obtener 20+ resultados de la API de Google Places?
  • Android: Determinar el tipo de seguridad de las redes wifi en el rango (sin conectarse a ellos)
  • ¿Cómo resolver esto? ¡Gracias!

  • Eclipse Debugging Android no funciona
  • Prácticas recomendadas: Disposiciones en Android (Programmatic vs XML)
  • ¿Es imposible hacer un juego Android sin tartamudear? Me estoy volviendo loco aqui
  • Android Studio no está iniciando: Error fatal al inicializar 'com.intellij.util.indexing.FileBasedIndex
  • Problema de migración de desarrollo nativo de Android Studio 2.2
  • En Android 7 (API nivel 24) mi aplicación no se permite silenciar el teléfono (establecer el modo de timbre en silencio)
  • 5 Solutions collect form web for “¿Cómo pasar el evento onClick a su padre en Android?”

    Creo que necesitas usar uno de esos métodos para poder interceptar el evento antes de que sea enviado a los componentes apropiados:

    Activity.dispatchTouchEvent(MotionEvent) : esto permite que su actividad intercepte todos los eventos táctiles antes de que se envíen a la ventana.

    ViewGroup.onInterceptTouchEvent(MotionEvent) : permite a un grupo de vistas ver los eventos a medida que se envían a las vistas secundarias.

    ViewParent.requestDisallowInterceptTouchEvent(boolean) : llama a una vista padre para indicar que no debe interceptar eventos táctiles con onInterceptTouchEvent (MotionEvent).

    Más información aquí .

    Espero que ayude.

    Declare que su TextView no se puede hacer clic / se puede TextView usando android:clickable="false" y android:focusable="false" o v.setClickable(false) y v.setFocusable(false) . Los eventos de clic deben enviarse al padre de TextView ahora.

    Nota:

    Para lograr esto , tienes que añadir click a su parent directo. O establecer android:clickable="false" y android:focusable="false" a su padre directo para pasar el oyente a otro padre .

    En algún momento sólo esto ayuda:

     View child = parent.findViewById(R.id.btnMoreText); child.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { View parent = (View) v.getParent(); parent.performClick(); } }); 

    Otra variante, funciona no siempre:

     child.setOnClickListener(null); 

    Poner

     android:duplicateParentState="true" 

    En el niño entonces las opiniones obtienen su estado dibujable (enfocado, presionado, etc.) de su padre directo en lugar de de sí mismo. Usted puede fijar onclick para el padre y él llamada en el niño chascado

    Si su TextView crea problemas de clic, quite android:inputType="" de su archivo xml.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.