ios - 如果 AVAudioPlayer 当前导入了文件,如何使用保护语句判断?
问题描述
我正在寻找一个像 AVPlayer 一样可用的语句,如 AVAudioPlayer 中的 audioPlayer.currentItem,或者至少一个可以给我相同结果的语句 - 无论 audioPlayer 中是否存在音频文件。
解决方案
总是有“音频播放器中的音频文件”。所有 AVAudioPlayer 的初始化程序都要求您为音频播放器提供一些东西来播放。因此,除非您这样做,否则该音频播放器将不存在。
也许这里的问题是你不知道你是否已经初始化了这个对音频播放器的引用。处理该问题的方法是将引用设为 Optional 并从以下位置开始nil
:
var audioPlayer : AVAudioPlayer? = nil
当需要配置 AVAudioPlayer 时,您可以这样做,现在参考不再是nil
:
self.audioPlayer = AVAudioPlayer(...)
然后,您正在寻找的测试归结为self.audioPlayer == nil
.
推荐阅读
- javascript - 在 Javascript 中,为什么不再支持 ShiftLeft?如何检测正在按下哪个 shift 键?
- postgresql - PostgreSQL - 如何在例程中使用等于 null
- python - 如何从字典列表中提取键
- php - 如何在 MySQL 中使用 ROW_NUMBER 来检查每位员工每天的行数?
- cucumber - 组织黄瓜测试场景和特点
- sql - 在 Oracle SQL 中重新排列值
- python - 移除反应 DiscordBot
- python - 如何将 JSON 响应对象(来自烧瓶的 jsonify)转换为字典以进行处理
- javascript - 如何使用时间指示器创建引导自动隐藏模式?
- windows - 如何使用 shell 脚本获取管道命令的正则表达式匹配?