Kivy 键盘高度
我正在用Kivy创建一个应用程序,我想知道键盘的高度,这样我就可以相应地调整界面上的控件。我听说plyer这个工具很不错,可以在不同平台上使用(我想为Android和iOS(还有Windows手机)开发),不过它似乎不支持键盘的控制。
我该如何在Android(和iOS)上获取键盘的高度信息呢?我用的是Python 3编程(如果你知道Python 2.7也可以)。如果直接写死键盘的高度就不好,因为不同设备的键盘高度是不一样的。
1 个回答
2
主分支里有一些新功能,可以帮助你管理这个问题。使用 Window
(from kivy.core.window import Window
)你可以做到以下几点:
Window.keyboard_height
可以获取当前软件键盘的高度。Window.softinput_mode
可以设置为几种模式:''
(空),这时你可以像上面那样使用键盘高度;'pan'
,这时Kivy的视图会向上移动,避免键盘遮挡;或者'resize'
,这时Kivy的视图会调整大小,以适应键盘顶部和屏幕顶部之间的空间。
这些内容可以在 Window 的文档中找到。
不过在当前的稳定版本中,实际上没有很好的方法来实现这个功能,但你可以尝试用pyjnius来调用pan或resize模式。