我正在努力学习Kivy和KivyMD,因为我想制作一个android应用程序。
但我被困在第一个障碍上了。我想要一个工具栏,或者像KivyMD文档所称的那样,一个TopAppBar。
我试图按照文档实现它,但是我得到了一个错误的Unknown Class <MDTopAppBar>
我想我可能是打错了什么东西,所以我从文档中复制并粘贴了整个代码示例,而错误仍然存在。据我所知,我正在运行最新版本的Kivy & KivyMD
来自文档的代码:
from kivy.lang import Builder
from kivymd.app import MDApp
KV = '''
MDBoxLayout:
orientation: "vertical"
MDTopAppBar:
title: "MDTopAppBar"
MDLabel:
text: "Content"
halign: "center"
'''
class Test(MDApp):
def build(self):
return Builder.load_string(KV)
Test().run()我的代码:
from kivymd.app import MDApp
from kivy.lang import Builder
KV = '''
MDBoxLayout:
MDTopAppBar:
title: "World Pool Rules"
'''
class MyApp(MDApp):
def build(self):
return Builder.load_string(KV)
if __name__ == '__main__':
MyApp().run()我也尝试过from kivymd.uix.topappbar import MDTopAppBar,但是只得到了一个No module named错误。
任何帮助都将不胜感激。
有人知道我怎么解决这个问题吗?
发布于 2022-04-27 10:10:35
我最近也有同样的问题。我查看了正式文档,发现文档引用的是1.0.0-dev版本。然而,我是通过pypi版本安装的: 0.104.2 (最新的官方版本-我猜?)
https://pypi.org/project/kivymd/
将文档更改为正确的版本后:
https://kivymd.readthedocs.io/en/0.104.2/index.html
我看到没有"MDTopBar“。您需要只使用"MDToolbar“来代替。
发布于 2022-05-14 05:08:19
根据KivyMD的主要开发人员对这个问题的评论的说法,特定位置的MD{Bottom,Top}AppBar小部件套件是最近增加的一个组件,尚未正式发布。据推测,这些小部件将与下一个稳定版本一起发布(例如,KivyMD 0.104.3)。
要想现在访问它们,请手动安装来自GitHub托管的git存储库的KivyMD的实时版本。多亏了现代pip的魔力,这条线可以让你来回往返:例如,
pip install git+https://github.com/kivymd/KivyMD.gitKivyMD的“最新”文档实际上是不稳定的文档。这就是我们不能拥有好东西的原因。
https://stackoverflow.com/questions/72025912
复制相似问题