Как создать меню на kivy
Камрады подскажите как создать меню на kivy. Пытаюсь использовать kivy.uix.actionbar. Создаю объект ActionBar, привязываю к главному окну, на котором появляется область меню. Дальше по идее по цепочке привязываются ActionView и ActionButton. Но при попытке привязать ActionView получаю ошибку: AttributeError: 'NoneType' object has no attribute 'parent'. Код ниже. Как победить эту напасть? P.S. рекомендации использовать kv language не принимаются)
from kivy.app import App
from kivy.uix.actionbar import ActionBar
from kivy.uix.actionbar import ActionView
from kivy.uix.actionbar import ActionButton
class Container(BoxLayout):
def __init__(self, **kwargs):
super(Container, self).__init__(**kwargs)
self.menu()
def menu(self):
menu = ActionBar()
aw = ActionView()
#bt = ActionButton()
menu.add_widget(aw)
#aw.add_widget(bt)
self.add_widget(menu)
class MyApp(App):
def build(self):
return Container()
if __name__ == '__main__':
MyApp().run()
Ответы (1 шт):
Автор решения: Zmiter
→ Ссылка
Решение оказалось следующим: ActionView должно обязательно содержать экземпляр ActionPrevious, а затем все остальное, т.е. все свелось к добавлению трех строчек:
...
from kivy.uix.actionbar import ActionPrevious
...
class Container(BoxLayout):
...
def menu(self):
...
action_previous = ActionPrevious(title='Title')
aw.add_widget(action_previous)
...