def build(self): root = Builder.load_string(kitchen_sink_kv) root.toolbar.nav_button = ["md-menu", lambda *x: root.nav.toggle()] root.toolbar.add_action_button("md-refresh") root.toolbar.add_action_button("md-more-vert") root.r_btn_1.bind(on_release=lambda *x: setattr( root.dialog_btn, 'disabled', not root.dialog_btn.disabled)) self.tile_data = [{ 'text': "Button 1", 'secondary_text': "With a secondary text" }, { 'text': "Button 2", 'secondary_text': "With a secondary text" }, { 'text': "Button 3", 'secondary_text': "With a secondary text" }, { 'text': "Button 4", 'secondary_text': "With a secondary text" }] self.tile_single_data = [{ 'text': "Button 1" }, { 'text': "Button 2" }, { 'text': "Button 3" }, { 'text': "Button 4" }] self.tile_icon_data = [{ 'icon': 'md-alarm', 'text': 'Alarm', 'secondary_text': "An alarm button", 'callback': root.nav.dismiss }, { 'icon': 'md-event', 'text': 'Event', 'secondary_text': "An event button", 'callback': root.nav.dismiss }, { 'icon': 'md-search', 'text': 'Search', 'secondary_text': "A search button", 'callback': root.nav.dismiss }, { 'icon': 'md-thumb-up', 'text': 'Like', 'secondary_text': "A like button", 'callback': root.nav.dismiss }] self.tile_avatar_data = [{ 'avatar': images_path + 'default_avatar.jpg', 'text': 'Avatar tile', 'secondary_text': "That's a handsome dude!" }, { 'avatar': images_path + 'default_avatar.jpg', 'text': 'Avatar tile', 'secondary_text': "Very handsome indeed" }, { 'avatar': images_path + 'default_avatar.jpg', 'text': 'Avatar tile', 'secondary_text': "Extraordinary handsome" }, { 'avatar': images_path + 'default_avatar.jpg', 'text': 'Avatar tile', 'secondary_text': "Super handsome" }] content = MaterialLabel( font_style='Body1', theme_text_color='Secondary', text= "This is a Dialog with a title and some text. That's pretty awesome right!", valign='top') content.bind(size=content.setter('text_size')) self.dialog = Dialog(title="This is a test dialog", content=content, size_hint=(.8, None), height=dp(200), auto_dismiss=True) self.dialog.add_action_button("Dismiss", action=lambda *x: self.dialog.dismiss()) root.textfield.bind(on_text_validate=self.set_error_message, on_focus=self.set_error_message) root.dialog_btn.bind(on_release=self.dialog.open) return root