print("Screen pre-enter")
self.populate()
form = None
for child in self.children:
if 'selectable_cocktails_list' in child.ids: # Copy cocktails into List widget
child.selectable_cocktails.data = [{'text': x['name.text']} for x in self.cocktails_list]
break
--------------------------- kv
<CocktailsScreen>:
name: "cocktails"
CocktailsList:
<SelectableLabel>:
# Draw a background to indicate selection
canvas.before:
Color:
rgba: (1, 0, 0, 1) if self.selected else (.0, 0.9, .1, .3)
Rectangle:
pos: self.pos
size: self.size
Color:
rgba: (.0, 0.9, .1, .3)
Rectangle:
pos: self.pos
size: self.size
<CocktailsList>:
orientation: "vertical"
id: fred
# The label (selectable_cocktails) must match the variable defined in the AddLocationForm class
# The value (selectable_cocktails_list) must match the id of the RecycleView defined below
selectable_cocktails: selectable_cocktails_list
RecycleView:
id: selectable_cocktails_list
name: "rvcocktailslist"
viewclass: 'SelectableLabel'
SelectableRecycleBoxLayout:
default_size: None, dp(26)
default_size_hint: 1, None
size_hint_y: None
height: self.minimum_height
orientation: 'vertical'
multiselect: False
touch_multiselect: False