过年前我已经做过一个android版音乐播放器, 模仿音乐播放器项目 ,这个播放器基本功能已经实现,但是最大的问题是播放代码放在了activity中处理的,当推出音乐播放界面的时候,音乐是需要继续播放,当带过来电话时音乐需要暂停,打完电话继续播放,所以以前的版本还是有很大问题的,今天决定一步一步实现一个功能齐全的播放器,把播放控制代码放在service中。
首先来实现这样一个简单的界面:
新建一个android项目,如图所示:
把项目中用到的图片拷贝到drawable目录下,编写main.xml
编写MainActivity类
注意这里要继承的是TabActivity,关于TabHost的用法不做过多介绍,官网有。最后分别建立其他用到的activity和使用的xml布局文件,不要忘记在manifest中注册,
这样上面的主界面就完成了。
下面看一下怎么遍历音乐文件,通过listview展现到界面上,
在相应目录下建立MusicList类,这是一个普通类,为了加载音乐文件
这里是通过ContentResolver得到的音乐信息,因为系统为了便于应用程序间音乐信息的共享,提供了ContentProvder,所以我就没有遍历SD卡下的音乐文件。
Music类:
因为要用到自定义适配器,所以在layout下先建立一个和适配器匹配的xml
接下来是自定义的适配器MusicAdapter
时间格式的转换是我从网上找到的,直接调用toTime方法能得到格式化后的时间了。
最后是在ListActivity添加适配器:
这样音乐文件就会加载上来了,看看效果吧: