2016-09-15 3 views
2

habe ich schon darüber recherchiert und fanden diesen Beitrag:Fokus verlieren und Tastatur ablehnen, wenn Sie außerhalb des Feldes TextInput klicken, um nativ zu reagieren?

react-native: hide keyboard

Aber das ist für mich nicht funktioniert hat. Wenn ich den Teil des Bildschirms berühre, der sich außerhalb des Texteingabefelds befindet, habe ich erwartet, dass das Eingabefeld den Fokus verliert und die Tastatur nicht mehr funktioniert. Aber nichts passiert. Der Cursor blinkt am Eingang weiter.

Unten ist der Code, den ich ausprobiert habe. Bitte beachten Sie, dass ich redux-Form v6 bin mit:

import dismissKeyboard from 'dismissKeyboard'; 

<TouchableWithoutFeedback onPress={()=> dismissKeyboard()}> 
     <View style={styles.inputWrap}> 
      <Field name="editLocation" component={TextField} /> 
      <Button onPress={handleSubmit(this.onSubmit)}>Sign In</Button> 
     </View> 
</TouchableWithoutFeedback> 

TextField- Komponente enthält TextInput-. Ich bin mir nicht sicher, ob ich etwas falsch mache.

Ich habe den Code auf Genymotion Emulator mit dem Samsung S6 Bild und auf meinem Samsung Note getestet 4.

+1

Wissen Sie, wie groß die Abmessungen Ihres "TouchableWithoutFeedback" sind? – rclai

+0

Mit anderen Worten, wissen Sie, ob Ihr Callback "onPress" aufgerufen wird? – rclai

+0

@rclai Perfekt. Vielen Dank, dass Sie Ihre Anfrage kommentiert haben. Dimension war das eigentliche Problem. Vielen Dank. –

Antwort

1

Sie müssen die Abmessungen Ihres TouchableWithoutFeedback überprüfen, um sicherzustellen, dass Ihre onPress aufgerufen wird.

+0

Können Sie bitte Ihre Antwort ein bisschen mehr erarbeiten? Wie überprüfe ich die Abmessungen meiner Komponente? – aviggiano

Verwandte Themen