当在本机反应中按下 TextInput 时,防止系统键盘显示
Prevent system Keyboard from showing when TextInput is pressed in react native
我想在按下输入字段时显示我的自定义键盘组件。我想完全防止系统默认键盘被触发。
我曾尝试在 onFocus 上关闭键盘,但这会触发键盘,然后关闭键盘。
<TextInput
placeholder="type here"
onFocus={Keyboard.dismiss}
/>
我厌倦了将 TextInput 包装在 TouchableWithoutFeedback 中,但这个解决方案不起作用。
<TouchableWithoutFeedback
onPress={() => Keyboard.dismiss()}
accessible={false}
>
<View>
<TextInput placeholder="type here" />
</View>
</TouchableWithoutFeedback>
有什么办法可以达到预期的效果吗?
在项目的(android > app > src > main) 文件夹中打开AndroidManifest 文件,然后添加:
android:windowSoftInputMode="stateHidden"
像这样添加到您的 activity 标签:
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
android:windowSoftInputMode="stateHidden">
您可以在 Android 上使用 showSoftInputOnFocus
,请参阅文档:
https://facebook.github.io/react-native/docs/textinput#showsoftinputonfocus
您的情况与在连接外部键盘时避免显示键盘相同(在 iPad 上很常见)。
我想在按下输入字段时显示我的自定义键盘组件。我想完全防止系统默认键盘被触发。
我曾尝试在 onFocus 上关闭键盘,但这会触发键盘,然后关闭键盘。
<TextInput
placeholder="type here"
onFocus={Keyboard.dismiss}
/>
我厌倦了将 TextInput 包装在 TouchableWithoutFeedback 中,但这个解决方案不起作用。
<TouchableWithoutFeedback
onPress={() => Keyboard.dismiss()}
accessible={false}
>
<View>
<TextInput placeholder="type here" />
</View>
</TouchableWithoutFeedback>
有什么办法可以达到预期的效果吗?
在项目的(android > app > src > main) 文件夹中打开AndroidManifest 文件,然后添加:
android:windowSoftInputMode="stateHidden"
像这样添加到您的 activity 标签:
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
android:windowSoftInputMode="stateHidden">
您可以在 Android 上使用 showSoftInputOnFocus
,请参阅文档:
https://facebook.github.io/react-native/docs/textinput#showsoftinputonfocus
您的情况与在连接外部键盘时避免显示键盘相同(在 iPad 上很常见)。