2

所以,我一直在使用 kivymd,它工作得很好,但是我一直在寻找一些东西,但我无法得到答案,它是关于 android 上的谷歌键盘。

当你想在 kivy textinput 或 MDTextField 上书写时,弹出的 google 键盘没有显示建议并且不能进行滑动输入,你们知道如何解决这个问题吗? 出现的键盘

我需要的键盘

4

1 回答 1

0

这是一个老问题,但如果 OP 仍然需要答案,对于像我这样发现这个问题的其他人,我想我会在这里发布我认为答案的内容。

不幸的是,这似乎是 Kivy 中的一个错误。就我能理解的问题而言,Kivy TextInput 类不会监听on_textedit事件(我可能没有正确理解这一点)。关于这个问题的讨论可以在这个 bug和这个pull request中找到。实际上,如果我理解正确的话,Kivy 最终会告诉 Android 它需要一个用于密码字段的键盘。因此,不存在滑行输入、建议等,并且keyboard_suggestionsTextInput 类的属性没有区别。

在修复此错误之前(不幸的是,我不知道如何解决此问题),似乎有两种可能的解决方法。但是,我也没有真正尝试过。

  • 在这个SO question and answer中提到了第一个,其中有人将 Kivy 降级到 1.9.1(以及 Cython 和 buildozer)并设法解决了该问题中提到的问题(我认为应该类似于这个问题)。

  • 第二个在这个reddit 帖子中提到,有人建议将相关的 Android 类子类化为pyjnius. 这门课是android.widget.EditText,我正在尝试这个,到目前为止没有成功。

注意:我的错误,这不是 Kivy 中的错误,而是底层 SDL 库中的错误。你可以在这里找到讨论

于 2020-11-23T07:01:48.447 回答