隐藏 Python Kivy TextInputs 的 Android 屏幕键盘

Posted

技术标签:

【中文标题】隐藏 Python Kivy TextInputs 的 Android 屏幕键盘【英文标题】:Android on-screen keyboard hiding Python Kivy TextInputs 【发布时间】:2015-01-04 02:48:56 【问题描述】:

我刚刚开始学习如何在 Kivy 中进行开发,但是我在 android 上的键盘出现了问题。当我有一系列 TextInputs 运行到屏幕底部时,我看不到屏幕键盘隐藏的字段。

这是有和没有键盘的屏幕显示:

without keyboard

With keyboard

通常,我希望能够滚动屏幕以显示相关的文本输入并选择它,但我不知道该怎么做... :(

我该如何处理?

【问题讨论】:

你的问题一点都不清楚。您需要阅读How to Ask 以了解如何在此处发布问题并让我们回答您;) 很抱歉,我的母语是法语,我的英语有点问题... 我觉得这个问题很清楚 是的,这个问题很清楚。他希望用户能够访问每个字段,但原生 android 键盘覆盖了一半的屏幕,但不允许用户向下滚动到所覆盖的内容。如果您不理解某人的问题,您可以询问更多信息,但不要粗鲁。你不理解不是他的错。 【参考方案1】:

您可以使用softinput_modeproperty of Window 选择打开键盘时发生的情况,也可以选择使用keyboard_height 了解键盘的大小并适当地移动文本输入。

但是,这仅在 kivy master(1.9 版)中可用。很快就会有另一个稳定版本包含它。

【讨论】:

如何将 kivy master 1.9 版添加到 buildozer.spec【参考方案2】:

使用'Window',而不是'Windows',并放在main.py中:

from kivy.core.window import Window
Window.softinput_mode = 'pan'

【讨论】:

【参考方案3】:

好的,我安装了 1.9.0 版。 但是在哪里以及如何放置代码 Window.softinput_mode? 当我把我的主要:

from kivy.core.windows import Windows
Windows.softinput_mode = 'pan'

它不起作用...

【讨论】:

【参考方案4】:

实际上,您要查找的内容应该与 main.py 中的内容完全相同(例如?):

from kivy.core.window import Window
Window.softinput_mode = 'below_target'

【讨论】:

以上是关于隐藏 Python Kivy TextInputs 的 Android 屏幕键盘的主要内容,如果未能解决你的问题,请参考以下文章

Kivy'对象没有属性'错误

如何使用kivy将textinput转换为float并返回

Python & Kivy - 显示/隐藏框

在 Kivy 中仅启用四行文本输入

Python Kivy:在文本输入字段中隐藏虚拟键盘

Kivy:无法从另一个类更新文本输入值