键盘在 Android 上打开并立即消失

Posted

技术标签:

【中文标题】键盘在 Android 上打开并立即消失【英文标题】:Keyboard opens and immediately disappears on Android 【发布时间】:2020-01-10 06:23:32 【问题描述】:

问题:在动态填充列表中选择输入框时,键盘会立即消失。仅在选择页面底部附近的输入框时发生。

发生于:android(适用于 ios

这个应用是用 Expo 创建的,我还没有退出。

当前使用的是 KeyboardAwareFlatlist,但是如果我将其切换为 FlatList,问题仍然存在。下面是 TextInput 的代码。如果您想要任何其他代码,请告诉我。

<TextInput
  style=
  color: 'black',
  backgroundColor: 'white',
  padding: 5,
  fontSize: 16,
  marginBottom: 10,
  
  keyboardType='numeric'                                       
  returnKeyType='done'
  onChangeText=(text) => this.setDuration(text, index)
  value=item.duration.toString()
 />

问题视频:https://www.youtube.com/watch?v=U3Ps_tz4Uxw&feature=youtu.be

【问题讨论】:

【参考方案1】:

使您的外部“包装器”成为 ScrollView。 这应该可以解决问题。

   `return ( 

    <ScrollView>

        // All your other code

    </ScrollView>
);`

【讨论】:

【参考方案2】:

所以我遇到了一些非常相似的东西,尽管它与 FlatList 无关。

我的解决方法是像这样添加removeClippedSubviews=false

<Input
    id="description"
    label="Description"
    errorText="Enter a valid Description"
    keyboardType="default"
    removeClippedSubviews=false
    autoCorrect
    multiline
    type="text"
    required
/>

虽然看起来有点脏,但也可以使用:

keyboardDismissMode='none'

像这样:

<Input
    id="title"
    label="Title"
    keyboardDismissMode='none'
    errorText="Enter a valid title"
    autoCapitalize="sentences"
    keyboardType="default"
    returnKeyType="next"
    onInputChange=inputChangeHandler
    required
/>

让我知道这是否有效。希望这个答案能及时传达给您。我讨厌未回答的 Stack Overflow 问题

【讨论】:

以上是关于键盘在 Android 上打开并立即消失的主要内容,如果未能解决你的问题,请参考以下文章

为啥在 tabcontrol 内的 WPF 文本框中单击时,Windows 10 键盘会出现并立即消失?

Android 点击其他地方键盘消失

使用媒体查询时无法打开 Android 键盘

Facebook 分享对话框立即消失

不希望软键盘在启动时自动显示-Android [重复]

为什么android模拟器会启动但是立即死亡?