Te sugerimos que revises esta solución en un ambiente controlado antes de pasarlo a producción, saludos.
Solución:
El problema con el teclado que no se cierra se vuelve más grave si tiene keyboardType='numeric'
ya que no hay forma de descartarlo.
Reemplazar View con ScrollView no es una solución correcta, como si tuviera múltiples textInput
s o button
s, tocarlos mientras el teclado está levantado solo descartará el teclado.
La forma correcta es encapsular View con TouchableWithoutFeedback
y llamando Keyboard.dismiss()
EDITAR: ahora puedes usar ScrollView
con keyboardShouldPersistTaps='handled'
para descartar el teclado solo cuando los niños no manejan el toque (es decir, tocar en otras entradas de texto o botones)
Si usted tiene
cambiarlo a
o
import Keyboard from 'react-native'
EDITAR: también puede crear un componente de orden superior para descartar el teclado.
import React from 'react';
import TouchableWithoutFeedback, Keyboard, View from 'react-native';
const DismissKeyboardHOC = (Comp) =>
return ( children, ...props ) => (
children
);
;
const DismissKeyboardView = DismissKeyboardHOC(View)
Simplemente úsalo así
...
render()
Nota la accessible=false
es necesario para que el formulario de entrada siga siendo accesible a través de VoiceOver. ¡Las personas con discapacidad visual te lo agradecerán!
¡Esto acaba de actualizarse y documentarse! No más trucos ocultos.
import Keyboard from 'react-native'
// Hide that keyboard!
Keyboard.dismiss()
enlace GitHub
use esto para el despido personalizado
var dismissKeyboard = require('dismissKeyboard');
var TestView = React.createClass(
render: function()
return (
)
)
Sección de Reseñas y Valoraciones
Te invitamos a sustentar nuestro ensayo ejecutando un comentario y puntuándolo te damos las gracias.