作者:明睿崇 | 来源:互联网 | 2024-12-22 14:58
在开发音乐播放器模块时,我们遇到了一个有趣的问题:当用户选择随机播放模式时,如何确保“上一首”按钮能够返回到最近播放的歌曲,而不是简单地随机选择。很多现有的音乐播放器在随机模式下点击“上一首”会直接回到刚刚听过的那首歌。
为了实现这一功能,我们可以将用户点击“下一首”时所播放的歌曲存入一个集合中。当用户点击“上一首”时,如果当前处于随机模式,我们需要从这个集合中取出倒数第二个元素,并依次向前取值,直到返回到最早的歌曲。
具体实现步骤如下:
- 创建一个列表(如ArrayList)用于存储每次播放的歌曲ID或索引。
- 每当用户点击“下一首”,将当前播放的歌曲添加到该列表中。
- 当用户点击“上一首”且处于随机模式时,检查列表大小是否大于等于2。如果是,则从倒数第二个元素开始向前遍历,逐个返回之前的歌曲。
- 为防止重复播放同一首歌,可以在返回歌曲后将其从列表中移除。
通过这种方式,可以确保用户在随机模式下点击“上一首”时,能够按顺序返回到之前播放的歌曲,而不仅仅是随机选择。