这个控件可以作为导航栏来使用,效果非常好。

1. ActionBar包含的组件

ActionBar中需要一个ActionView作为容器来存放其他控件,比如:ActionPreviousActionOverflowActionButtonActionGroup等子控件。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
  • ActionPrevious控件:定义导航栏的标题和logo等信息,以下是它的所有属性

    • app_icon:导航栏的logo图片,没有配置会有一个默认图标

    • app_icon_height:logo图片的高度,默认为0

    • app_icon_width:;logo图片的宽度,默认为0,最好height和width一起配置,要不然都不配置

    • app_icon_width

    • color:文本颜色,默认值是[1,1,1,1]

    • markup:布尔值属性,默认值为False,使用markuplabel来渲染文本,用法是这样的

      我们需要将标题文本加粗,将markup设置为True,并在title中加入markup标签

      ActionPrevious:
          title: '[b]Action Bar[/b]'
          with_previous: False
          markup: True 
    • previous_image:当with_previous设置为True后,改图片就会显示出来,配置如下
      ActionPrevious:
          title: '[b]Action Bar[/b]'
          markup: True
          with_previous: True
          previous_image: 'rewind.png'
      Kivy中ActionBar控件的使用 Python 第1张
    • previous_image_height:不解释
    • previous_image_width:不解释
    • title:标题文本
  • with_previoius:是否显示previous,默认为True
  • ActionOverflow:是一个容器控件,继承之ActionGroup。当窗体宽度逐渐减小时,导航栏上的非important子控件就可加入到这个容器中,其依附在窗体的右上角。
    ActionOverflow:
        overflow_image: 'rewind.png'

    Kivy中ActionBar控件的使用 Python 第2张

  • ActionButton:就是一个导航栏按钮,可以指定text文本和icon图标,并且可以设置important属性,如果important设置为True时,不会随着窗体宽度变窄而进入到ActionOverflow容器中,会一直显示在导航栏中。
  • ActionGroup:相当于一个下拉列表,点击可以实现下拉和回收功能。
    ActionGroup:
        text: 'Group1'
        ActionButton:
            text: 'Btn5'
        ActionButton:
            text: 'Btn6'
        ActionButton:
            text: 'Btn7'

    Kivy中ActionBar控件的使用 Python 第3张

2. 总结

  • 适用于GUI窗体程序的主菜单栏开发;
  • 可以自定义样式,比如改变菜单栏的背景颜色,或者加入其它一些功能效果;
  • 注意Kivy的坐标原点是在窗体的左下角。
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄