【问题标题】:Form with the VKB always openVKB 始终打开的表单
【发布时间】:2020-05-05 18:49:12
【问题描述】:

对于用于聊天的Form,最好让 VKB 始终打开(就像在其他聊天应用中一样),因为在每条消息后打开和关闭 VKB 很烦人。

如何使用 Codename One 实现这一目标?我只对单个 Form 感兴趣,在其他表单中 VKB 应该正常运行。谢谢

【问题讨论】:

  • 我想我的问题相当于有一个TextArea,它永远不会失去焦点并保持VKB打开。我试图覆盖TextArea 的某些方法但没有成功。

标签: codenameone


【解决方案1】:

当您单击“完成”、返回(在 Android 上)或单击其他组件以移开焦点时,我们会最小化键盘。这与 whatsapp 在键盘行为方面的工作方式非常一致。您可以检测到最后一个并显式调用textField.startEditingAsync() 以重新打开键盘。

请注意,虚拟键盘始终与文本字段相关联。

【讨论】:

  • 这不起作用:我可以将textField.startEditingAsync() 添加到TextField 的actionListener,但这会导致VKB 被关闭然后再次打开。此外,这不会阻止滚动 contentPane 时关闭 VKB。我指的是 Threema 应用程序,它在 iOS 上保持 VKB 打开,即使在滚动期间和发送消息之后也是如此。
  • 我们需要为此添加明确的支持。现在 VKB 已隐式关闭。您可以就此提交 RFE,但它可能不会进入 7.0 时间范围
  • 已解决:我在表单中有一个表单。在外部形式和内部形式中使用 setFormBottomPaddingEditingMode(true); 允许用户滚动 contentPane 保持虚拟键盘打开,这就是我想要的。此解决方案适用于 Android 和 iOS。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-01
  • 1970-01-01
  • 2018-12-23
  • 1970-01-01
相关资源
最近更新 更多