Arrange widgets in a vertical or an horizontal box.
Example of a vertical layout:
layout = BoxLayout(orientation='vertical')
btn1 = Button(text='Hello')
btn2 = Button(text='World')
layout.add_widget(btn1)
layout.add_widget(btn2)
Example of a horizontal layout, with a border of 10 pixels between the layout and all the childrens, and the first button should be 70% of the layout, and the second should be 30%.
layout = BoxLayout(spacing=10)
btn1 = Button(text='Hello', size_hint=(.7, 1))
btn2 = Button(text='World', size_hint=(.3, 1))
layout.add_widget(btn1)
layout.add_widget(btn2)
Note
The size_hint represent the size available after substracting all the fixed size. For example, if you have 3 widgets (width is 200px, 50%, 50%), and if the layout have a width of 600px :
Bases: kivy.uix.layout.Layout
Box layout class. See module documentation for more informations.
Orientation of the layout.
orientation is an OptionProperty, default to ‘horizontal’. Can take a value of ‘vertical’ or ‘horizontal’.
Padding between widget box and children, in pixels.
padding is a NumericProperty, default to 0.
Spacing is the space between each children, in pixels.
spacing is a NumericProperty, default to 0.
Calculates the minimum size of the layout.
In calculation, there must be a space for child widgets that have fixed size (size_hint == (None, None)). There must also be at least enough space for every child layout’s minimum size (cant be too small even if size_hint is set).