python - 显示错误 ValueError 的选项卡:MDTabsLabel.color 的格式无效(得到 [])-Kivymd
问题描述
实际上,当我在 kivymd 中使用选项卡时出现错误。我尝试使用它们,因为它是在此处提供的。我收到以下错误:
Traceback (most recent call last):
File "kivy/properties.pyx", line 2023, in kivy.properties.ColorProperty.convert
File "kivy/properties.pyx", line 2041, in kivy.properties.ColorProperty.parse_list
ValueError: Invalid value for color (got [])
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/lang/builder.py", line 701, in _apply_rule
setattr(widget_set, key, value)
File "kivy/weakproxy.pyx", line 35, in kivy.weakproxy.WeakProxy.__setattr__
File "kivy/properties.pyx", line 498, in kivy.properties.Property.__set__
File "kivy/properties.pyx", line 527, in kivy.properties.Property.set
File "kivy/properties.pyx", line 2025, in kivy.properties.ColorProperty.convert
ValueError: MDTabsLabel.color has an invalid format (got [])
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/ibn-e-wajid-al-medki/pythonProject/store.py", line 317, in <module>
Example().run()
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/app.py", line 949, in run
self._run_prepare()
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/app.py", line 944, in _run_prepare
self.dispatch('on_start')
File "kivy/_event.pyx", line 709, in kivy._event.EventDispatcher.dispatch
File "/home/ibn-e-wajid-al-medki/pythonProject/store.py", line 300, in on_start
self.root.ids.tabs.add_widget(Tab(text=name_tab))
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/uix/floatlayout.py", line 65, in __init__
super(FloatLayout, self).__init__(**kwargs)
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/uix/layout.py", line 76, in __init__
super(Layout, self).__init__(**kwargs)
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivymd/uix/tab.py", line 374, in __init__
self.tab_label = MDTabsLabel(tab=self)
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivymd/uix/tab.py", line 328, in __init__
super().__init__(**kwargs)
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/uix/behaviors/togglebutton.py", line 84, in __init__
super(ToggleButtonBehavior, self).__init__(**kwargs)
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/uix/behaviors/button.py", line 121, in __init__
super(ButtonBehavior, self).__init__(**kwargs)
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/uix/label.py", line 318, in __init__
super(Label, self).__init__(**kwargs)
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/uix/widget.py", line 359, in __init__
self.apply_class_lang_rules(
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/uix/widget.py", line 463, in apply_class_lang_rules
Builder.apply(
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/lang/builder.py", line 541, in apply
self._apply_rule(
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/lang/builder.py", line 710, in _apply_rule
raise BuilderException(rule.ctx, rule.line,
kivy.lang.builder.BuilderException: Parser: File "<inline>", line 19:
...
17: )
18: color:
>> 19: self.text_color_active if self.state == 'down' else self.text_color_normal
20: on_x: self._trigger_update_tab_indicator()
21: on_width: self._trigger_update_tab_indicator()
...
ValueError: MDTabsLabel.color has an invalid format (got [])
File "/home/ibn-e-wajid-al-medki/pythonProject/venv/lib/python3.8/site-packages/kivy/lang/builder.py", line 701, in _apply_rule
setattr(widget_set, key, value)
File "kivy/weakproxy.pyx", line 35, in kivy.weakproxy.WeakProxy.__setattr__
File "kivy/properties.pyx", line 498, in kivy.properties.Property.__set__
File "kivy/properties.pyx", line 527, in kivy.properties.Property.set
File "kivy/properties.pyx", line 2025, in kivy.properties.ColorProperty.convert
Process finished with exit code 1
虽然代码与那里提供的代码相同,但带有选项卡图标的示例,我收到了这个错误。任何帮助表示赞赏
我正在使用 pycharm、ubuntu 20.04 和 python 3.8 kivy 1.11.1 和 kivymd 0.104.1。如果您需要其他任何东西,请让我现在。
解决方案
我认为这在 kivyMD 存储库中已修复,只是尚未发布。
您可以通过直接引用 repo 来安装更新的版本。这个版本通过了内部测试并为我解决了这个问题。它还尝试了您提到的选项卡示例,它也适用于我。
pip install https://github.com/kivymd/KivyMD/archive/b70abb5.zip
推荐阅读
- android - 有没有办法为两者(android,ios)创建一个应用程序图标?
- python - 有什么方法可以加入/连接所有创建的 DataFrame?
- javascript - 从 API 获取数据在本地工作,但不是实时的
- python - 切换 python 安装程序安装的 python 版本(mac)
- python - 如何修复python程序中的导入错误?
- c# - 在 aspx 页面中处理 webhook 事件?
- sql - 选择内部连接而不从中创建视图
- java - AudioTrack 只播放噪音而不是录制的语音
- c++ - 如何更改多个 C++ 模型的 Qml“模型属性”
- javascript - 浏览器地址栏的 JavaScript 事件监听器