我正在构建一个使用 Flutter 播放音乐的应用程序。
我创建了一个名为 MusicService 的类,其中所有音乐功能都在 playMusic、seekMusic、onAudioComplete 等方法中实现。
我有基于轨道构建的 TrackScreen(带有轨道背景、描述等)。在屏幕的 init 方法中,我调用了 MusicService 的一个实例来在屏幕上播放音乐。到目前为止,一切都很好。
我想做的是在轨道完成后构建一个新屏幕。此屏幕应基于播放列表中的下一首曲目。我认为的解决方案是在 MusicService 类的 onAudioComplete 方法中调用 Navigator.Push。问题是 Navigator.Push 需要一个上下文,我不知道如何指定它来引用它被调用的上下文,即 TrackScreen 上下文。
你有解决这个问题的想法吗?我是不是误会了什么?
感谢您的帮助