从 tableview 播放音频并前进到列表中的下一个文件

Posted

技术标签:

【中文标题】从 tableview 播放音频并前进到列表中的下一个文件【英文标题】:Play audio from tableview and advance to next file in list 【发布时间】:2012-03-26 17:41:54 【问题描述】:

我向用户展示了应用程序文档目录中列出的所有音频文件的表格视图,按字母顺序排列。我想允许使用耳机或 ios 内置的 iPod 音频控件前进到下一首曲目,但我不确定如何前进到文档中的下一首曲目。我播放它的代码是简单地获取文档的路径,并将其附加到他们在表格视图中单击的行的名称。有没有一种简单的方法可以从路径中获取下一个文件名?

【问题讨论】:

【参考方案1】:

您可能应该以数组的形式获取文件夹的内容,然后在排序后将其显示在表格中。这样,每一行都指向数组中的一个文件,可以检索和播放。要获取文件夹的内容,请使用以下行:

- (NSArray *)contentsOfDirectoryAtPath:(NSString *)path error:(NSError **)error;

【讨论】:

所以在 viewdidload 我有 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectoryPath = [paths objectAtIndex:0]; NSFileManager *manager = [NSFileManager defaultManager]; self.title = @"保存的讲道"; self.files = [[[manager contentsOfDirectoryAtPath:documentsDirectoryPath error:nil] pathsMatchingExtensions:[NSArray arrayWithObjects:@"mp3", nil]] retain];既然我得到的内容已经传递到一个数组中,并在那里显示,我该怎么做呢? 所以 self.files 是我所说的文件数组。您应该循环数组以逐个文件获取文件并播放。

以上是关于从 tableview 播放音频并前进到列表中的下一个文件的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的音频功能一直循环而不是一直运行?

当前播放完成后可以使用啥功能继续播放音频

Android - 查找当前是不是正在播放音频并停止它

音频android确实强制关闭应用程序

PyDub 从变量播放音频

从内存流播放 mp3/wav 文件到网页