Как скрыть ActionButton в Киви?

Я пытаюсь изменить видимость ActionButton в соответствии с текущим экраном (с помощью диспетчера экрана). Я не смог найти свойство Visible или что-то подобное, что может просто переключать видимость (ни для ActionButton, ни для виджетов в целом).

Пост 2013 года предлагает изменить текстуру кнопки, но я не хочу полагаться на такой взлом для выполнения такой простой задачи, кроме того, фон моего приложения будет переменным.

Еще один пост предлагаем удалить виджет и добавить его снова, если это необходимо. Несмотря на свою ненужную сложность. Я изменил работу в моем случае (ActionBar и ActionButton), поэтому я удаляю виджеты из ActionView и затем пытаюсь добавить ActionButton. Я пытался хранить как слабых, так исам участник, с обоими я получил следующую ошибку:

WidgetException: Cannot add <kivy.uix.actionbar.ActionButton object at 0x7fcd3fe22ce8>, it already has a parent <kivy.uix.actionbar.ActionView object at 0x7fcd3fe22870>

Любая идея будет принята с благодарностью. Я работаю с версией dev, но она не работает и с 1.8.

РЕДАКТИРОВАТЬ Я попробовал следующий код:

<AppActionBar>:
    ActionView:
        id: av

        ActionButton:
            id: btn_next
            text: 'Next screen'
            icon: 'data/icons/next_dark.png'
            important: True
            on_release: app.go_next()

Эта функция запускается после загрузки сцены:

def _initialize(self):
  self.next = self.ids.btn_next.__self__ # same result if I don't use .__self__

Этот код вызывает исключение, опубликованное выше:

self.ids.av.clear_widgets()
self.ids.av.add_widget(self.next)

Вот полный след исключения:

     self._mainloop()
   File "/usr/local/lib/python2.7/dist-packages/kivy/core/window/window_pygame.py", line 266, in _mainloop
     EventLoop.idle()
   File "/usr/local/lib/python2.7/dist-packages/kivy/base.py", line 330, in idle
     Clock.tick_draw()
   File "/usr/local/lib/python2.7/dist-packages/kivy/clock.py", line 429, in tick_draw
     self._process_events_before_frame()
   File "/usr/local/lib/python2.7/dist-packages/kivy/clock.py", line 562, in _process_events_before_frame
     if event.tick(self._last_tick) is False:
   File "/usr/local/lib/python2.7/dist-packages/kivy/clock.py", line 309, in tick
     ret = callback(self._dt)
   File "/usr/local/lib/python2.7/dist-packages/kivy/uix/boxlayout.py", line 174, in do_layout
     c.width = w
   File "properties.pyx", line 345, in kivy.properties.Property.__set__ (kivy/properties.c:3589)
   File "properties.pyx", line 377, in kivy.properties.Property.set (kivy/properties.c:4064)
   File "properties.pyx", line 431, in kivy.properties.Property.dispatch (kivy/properties.c:4657)
   File "/usr/local/lib/python2.7/dist-packages/kivy/uix/actionbar.py", line 552, in on_width
     self._layout_all()
   File "/usr/local/lib/python2.7/dist-packages/kivy/uix/actionbar.py", line 441, in _layout_all
     super_add(child)
   File "/usr/local/lib/python2.7/dist-packages/kivy/uix/boxlayout.py", line 212, in add_widget
     return super(BoxLayout, self).add_widget(widget, index)
   File "/usr/local/lib/python2.7/dist-packages/kivy/uix/layout.py", line 78, in add_widget
     return super(Layout, self).add_widget(widget, index)
   File "/usr/local/lib/python2.7/dist-packages/kivy/uix/widget.py", line 466, in add_widget
     % (widget, parent))
 WidgetException: Cannot add <kivy.uix.actionbar.ActionButton object at 0x7fecb5d6ed50>, it already has a parent <kivy.uix.actionbar.ActionView object at 0x7fecb5d6e8d8>

Ответы на вопрос(4)

Ваш ответ на вопрос