个⼈⾳乐APP总结
这次制作⼤作业(⾳乐app)让⾃⼰发现了更多的不⾜。本以为前⾯⽼师教的学得还不错,可惜还是太少虽然不⽐九⽜⼀⽑估计⼀⽜⼀⽑还是有吧,这还只是说的基础要往深处钻还有太多太多的事情要做,写下这个就当为⾃⼰的期末空闲时间定了个⽬标了吧。
源代码我就不上传了太low也不知道怎么上传东西在⾃⼰的博客中纯粹的就是记录⾃⼰的不⾜与学习中的要点。
1. 思路
⽼师的要求仅仅只是使⽤碎⽚,实现⾳乐播放器的基本功能:暂停 停⽌ 播放 快进 快退等功能,可以说相当的简单了,但是在编写过程中仍然出现许多的问题,有很多模块都是借鉴⽹上的基本上就是拿来直接⽤,并没有去推敲原理。
[1 ] Activity 我只使⽤了⼀个活动(线性布局)在嵌套了⼀个帧布局:⽤以放置碎⽚的转变。
[2 ]Fragement ⽤了两个碎⽚,第⼀个是⽤以显⽰⾳乐列表 的、第⼆个是点击对应的第⼀个碎⽚的下拉列表项跳转显⽰对应的信息
(⼀个position就解决了)。
[3 ]⾃定义类 Music 有MP3、Singner、Music_name 、Description(描述)、Sing_of_words(歌词),每个属性都有其对应的
get() set()⽅法。 MusicDAO 有List这个接⼝的对象作为属性⽽且是静态的 还有个静态⽅法 ⼀下就是基本代码
public class MusicDAO {
static List list=new ArrayList();
static {
Music music=new Music();
music.setLogo(_song);
music.setMp3();
music.setMusic_name(“霞光”);
music.setSingner(“陈欣若”);
music.setDescription("" +
“《霞光》于2006-7-28上线。歌曲时长02:38。《霞光》是3D动画《精灵世纪》的⽚尾曲,⼀上线就收到了⼴泛的关注,收获了众多的喜爱。\n” +
);
music.setWords_of_song("" +
“《霞光》\n” +
“作词:⾼博\n” +
“作曲:陈欣若\n” +
“演唱:曲锦楠,⽩冰\n” +
“⽉光把天空照亮” +
…");
list.add(music);
}
}
[4 ] 控件 ⾃定义的适配器(ViewHolder⽅式、Recrcle那个还没学)下拉列表(ListView) SeekBar(拖动条)其他的Button、TextView就不⼀ ⼀列举出来了,SeekBar加了监视器 有三个⽅法 :进度变化、开始拖动、拖动结束 代码如下:
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
//拖动条值改变
if (fromUser==true)
{
time=progress;
歌曲播放器
Log.i(“Run”, time + “SeekBar”);
mediaPlayer.seekTo(time*1000);
}
}
//线程的创建
thread = new Runnable() {
public void run() {
// super.run();
while (isRunnig) {
try {
Thread.currentThread().sleep(1000);
/
/ getAllStackTraces();
time++;
seekBar.setProgress(time);
Log.i(“Run”, time + “线程出错”);
} catch (InterruptedException e) {
e.printStackTrace();
// Log.i(“Run”, “线程出错”);
}
}
}
};//Thread~
运⽤了⼀点点线程知识差不多就是⽹上看了照搬那种(惭愧)
[5 ]就这样我的⾳乐App就完成了
2. 总结:我的Android 道路可以说还没有起步,仅仅是跨了出去。等把书看完了,也就算真正的上路了。