Я думаю, ключом является использование minimum_size
для ваших GridLayout
и BoxLayouts
, а также для задания размеров его дочерних элементов, CheckBox
и Label
. Как то так:
ScrollView:
size_hint: (None, 1)
width: grid.width
pos_hint: {'center_x':0.5}
GridLayout:
id: grid
cols: 1
padding: 0
spacing: 0, 0
size_hint: None, None
size: self.minimum_size
BoxLayout:
orientation: "horizontal"
size_hint: None, None
size: self.minimum_size
spacing: 0
padding: 0
CheckBox:
group: "notIdentReason"
size_hint: None, None
size: lab.height, lab.height
Label:
id: lab
text: "Sample rejected"
font_size: 24
color: 0, 0, 0, 1
size_hint: None, None
size: self.texture_size
BoxLayout:
orientation: "horizontal"
size_hint: None, None
size: self.minimum_size
spacing: 0
padding: 0
CheckBox:
group: "notIdentReason"
size_hint: None, None
size: lab.height, lab.height
Label:
text: "Unsubtyping"
font_size: 24
color: 0, 0, 0, 1
size_hint: None, None
size: self.texture_size
BoxLayout:
orientation: "horizontal"
size_hint: None, None
size: self.minimum_size
spacing: 0
padding: 0
CheckBox:
group: "notIdentReason"
size_hint: None, None
size: lab.height, lab.height
Label:
text: "Other"
font_size: 24
color: 0, 0, 0, 1
size_hint: None, None
size: self.texture_size