ActionPrevious получение неожиданного фона

Я сделал правило в своем kv для класса Button чтобы иметь определенный фон (предоставленный на изображении). Когда я создал ActionBar который содержит виджеты ActionPrevious и ActionButton , они оба, похоже, получили тот же фон.
И я бы понял, что экземпляр ActionButton получил этот фон, поскольку он наследует классы Button и ActionItem , но почему ActionPrevious получил тот же фон? Он наследует от BoxLayout и ActionItem , ни один из которых не имеет ничего общего с классом Button . В чем причина этого?

Кроме того, побочный вопрос
ActionPrevious имеет свойство with_previous которое, когда установлено значение True , добавляет кликабельную стрелку. Однако название виджета остается незаметным. Но документы говорят, что это свойство сделает весь виджет интерактивным. Хотя это не очень важно, я бы предпочел, чтобы весь ActionPrevious виджета ActionPrevious менялся при нажатии. Можно ли это достичь?
Поэтому я имею в виду, что когда вы нажимаете стрелку «Назад», только пространство вокруг нее и значок приложения становятся синими, но текст не похож, как на часть другого виджета.

Вот код для визуализации вопроса:

 from kivy.base import runTouchApp from kivy.lang import Builder from kivy.uix.actionbar import ActionBar Builder.load_string(''' <Button>: background_normal: 'some_file.png' <MenuBar>: ActionView: ActionPrevious: title: "Log out" with_previous: True ActionButton: text: "Settings" ''') class MenuBar(ActionBar): pass runTouchApp(MenuBar()) 

One Solution collect form web for “ActionPrevious получение неожиданного фона”

Хорошо, так что правда была в файле style.kv . В принципе, виджет ActionPrevious имеет следующую структуру:

 <ActionPrevious>: GridLayout: ActionPreviousButton: GridLayout: ActionPreviousImage: id: prev_icon_image # the "back" arrow ActionPreviousImage: id: app_icon_image # the app icon Widget: # perhaps something to split the title from the GridLayout Label: id: title # the title 

И ActionPreviousButton наследует от Button , поэтому именно поэтому роль ActionPrevious стрелки получила этот фон.

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

  • Вывод списка задач
  • Изображение PPM для искусства ASCII в Python
  • Запрос python aiohttp остановлен, но не вызвал никаких исключений
  • AttributeError: объект 'module' не имеет атрибута 'urlopen'
  • Три способа печати на Python - когда использовать их?
  • Можете ли вы установить атрибут метода в python
  • Как настроить django 1.8 для использования jinja2?
  • Итерирование и обновление списка в python
  •  
    Interesting Posts for Van-Lav

    Python: как отделить список на основе числовых значений и строк из данного списка

    Как изменить размер шрифта с помощью Seaborn FacetGrid?

    как я могу показать иррациональное число до 100 десятичных знаков в python?

    Как решить переобучение в случайном лесу Python sklearn?

    Определение плотности с использованием keras library

    Python: преобразование списка словарей в json

    Python – повторить неудачную задачу Celery из другой очереди

    Python, передайте переменную по имени в поток

    Сообщение об ошибке «no theme с именем« sphinx-theme-okfn »» при попытке создания документов CKAN

    Django «динамическая» форма проверки (обновлена)

    Итерировать значения в столбце pandas, содержащие списки и извлекать только уникальные значения

    Pandas read_sql с параметрами

    Как сгладить список кортежей в список pythonic

    Django, Postgres – колонка не может быть автоматически добавлена ​​для ввода целого числа

    перетасовка / перестановка DataFrame в пандах

    Python - лучший язык программирования в мире.