Код, сведенный к методу загрузки, который все блокирует. Я удалил игровую часть для простоты, чтобы показать проблему здесь.
Это не работает:
my.kv:
Код: Выделить всё
#:kivy 1.0.9
MyButton:
text: "MyButton"
Код: Выделить всё
from kivy.app import App
from kivy.uix.button import Button
from kivy.core.audio import SoundLoader
class MyButton(Button): pass
class MyApp(App):
sound = None
def build(self):
self.sound = SoundLoader.load('music.mp3')
return super().build()
if __name__ == '__main__':
MyApp().run()
my.py:
Код: Выделить всё
from kivy.app import App
from kivy.uix.button import Button
from kivy.core.audio import SoundLoader
class MyApp(App):
sound = None
def build(self):
self.sound = SoundLoader.load('music.mp3')
button = Button(text='Play Audio')
return button
if __name__ == '__main__':
MyApp().run()
Также НЕТ улучшений:
- Запланируйте событие часов для вызова Soundloader.load()
- Вызов SoundLoader.load() вне класса App, например в классе MyButton.
Подробнее здесь: https://stackoverflow.com/questions/798 ... in-kivy-kv
Мобильная версия