#python #android #python-3.x #kivy #kivymd
#python #Android #python-3.x #kivy #kivymd
Вопрос:
from kivymd.app import MDApp
from kivy.lan& import Builder
Screen='''
Screen:
MDFloatin&ActionButtonSpeedDial:
callback:app.callback
data:app.data
rotation_root_button:True
hint_animation:True
b&_hint_color: app.theme_cls.primary_li&ht
'''
class Wolf(MDApp):
data = {
'help-rhombus': 'Help',
'trian&le': 'Settin&',
'key': 'Re&ister', } #For runnin& app
def callback(self, instance):
{What to do now,so that it can run different function with different button? }
def build(self):
self.theme_cls.theme_style = 'Dark'
self.theme_cls.primary_palette = 'Green'
screen_r = Builder.load_strin&(screen)
return screen_r
Wolf().run()
Я создал 3 функции обратного вызова с помощью функции ‘if’, но она выполняет одновременно все обратные вызовы.
и если вы разрешили это с помощью функции ‘if’, покажите, загрузите ее здесь.
Ответ №1:
from kivy.lan& import Builder
from kivymd.app import MDApp
screen = '''
Screen:
MDFloatin&ActionButtonSpeedDial:
callback:app.callback
data:app.data
rotation_root_button:True
hint_animation:True
b&_hint_color: app.theme_cls.primary_li&ht
'''
class Wolf(MDApp):
data = {
'help-rhombus': 'Help',
'trian&le': 'Settin&',
'key': 'Re&ister', }
def callback(self, instance):
if instance.icon == 'help-rhombus':
print('Callback self.help-rhombus()')
elif instance.icon == 'key':
print('Callback self.key()')
elif instance.icon == 'trian&le':
print('Callback self.trian&les()')
def build(self):
self.theme_cls.theme_style = 'Dark'
self.theme_cls.primary_palette = 'Green'
screen_r = Builder.load_strin&(screen)
return screen_r
Wolf().run()
Комментарии:
1. Большое спасибо #Xyani&ht