我有一个textInput和一个按钮。当textInput处于焦点状态时,键盘会出现,但是如果您在可见键盘的情况下点击按钮,则首先键盘会消失,然后只有您可以点击按钮。为什么?我如何使其工作,以便可以在可见键盘的情况下轻按按钮?在android studio(Android本机)中开发的应用可以使用可见的键盘获取点击监听器。但是在本地反应时,它不起作用。如果您在按钮以外的任何位置点击,键盘应该会消失,不是吗?但是,如果您在可见键盘的情况下点击按钮,则btn应该会接收侦听器。我正在android设备上对其进行测试。
P.S,您可以在这里尝试:https://snack.expo.io/@codebyte99/addcomponents
<TextInput
placeholder={'Type smth'}
style={[{ borderBottomColor: 'gray', borderBottomWidth: 1 }]}
/>
<TouchableOpacity onPress={() => { this._onPressOut(); }}>
<Text>click here</Text>
</TouchableOpacity>
答案 0 :(得分:3)
滚动视图包含一个道具keyboardShouldPersistTaps
,用于处理滚动视图内部的键盘点击行为。
根据您的情况,将其命名为<ScrollView keyboardShouldPersistTaps='handled'>
这里是博览会链接scrollview with keyboard
答案 1 :(得分:3)
作为@ thakur-karthik答案的补充:
非常重要的一点是,在滚动视图场景中,当您使用本机模式的滚动视图时,会发生一些奇怪的事情。
仅在模式 的滚动视图中添加keyboardShouldPersistTaps={'always'}
无效。
如果您有任何祖先的滚动视图,则他们还必须 在其组件上声明keyboardShouldPersistTaps={'always'}
答案 2 :(得分:0)
仅供参考:如果您使用的是react-native-keyboard-aware-scroll-view,则需要这样做:
<KeyboardAwareScrollView keyboardShouldPersistTaps="always">