Android应用----音乐播放器----个人第一个完整的项目
来源:互联网 发布:maxdos 网络克隆 编辑:程序博客网 时间:2024/05/01 02:29
<pre name="code" class="html">
从开始学习Android之后,学到了什么也没总结过,那么利用找工作的空闲时间,就写写个人的第一个项目:既可以巩固知识以防止忘记,还可以分享出来以帮助更多人学习,
先来看看完成后的主体效果图。
一,音乐播放器的布局整个布局比较简单,就不一一赘述了。会把源码链接发上来
CSDN下载地址:点击打开链接
有需要的朋友可以下载参考。
第一张是主界面,第二张是播放时的界面,第三张是搜索歌曲时的界面。三个界面都写在一个XML文件里了,可能有人觉得很乱,isibility="invisible"一开始设置为隐藏就看不见了界面了。如果不想隐藏就设置为这个项目的话第二张和第三张效果图暂时是隐藏的。只有当监听事件触发了,界面才会出现。圆形图片是怎么来的呢?其实很简单,只需要用前辈们有很多绘制好的了,直接复制CircleImageView这个类过来用就好,<cn.tedu.ui.CircleImageView> 标签名是包名+类名需要手动填写
<cn.tedu.ui.CircleImageView
android:id="@+id/ivCMPic"
android:layout_width="46dp"
android:layout_height="46dp"
android:layout_marginLeft="24dp"
android:layout_marginTop="7dp"
android:onClick="doClick"
android:src="@drawable/timg" />
下面一段代码是红色箭头的监听触发事件。触发的动作可以任意发挥。(平滑,弹跳,淡入淡出等等),比较简单就不细说了,不懂得同志请请百度吧。
/** * 添加监听 * @param view */public void doClick(View v) {switch (v.getId()) {case R.id.ivCMPic://点击圆形图标 弹出播放界面relativePlayMusic.setVisibility(View.VISIBLE);//一开始是隐藏,当点击之后,界面显示。ScaleAnimation scaleAnimation = new ScaleAnimation(0.1f, 1f, 0.1f, 1f, 0, relativePlayMusic.getHeight());scaleAnimation.setDuration(550);//设置动作scaleAnimation.setInterpolator(new AccelerateInterpolator());relativePlayMusic.startAnimation(scaleAnimation);break;case R.id.ibSearch: //搜索音乐searchMusic();break;case R.id.btnToSearch: //去搜索 显示搜索界面relativeSearchMusic.setVisibility(View.VISIBLE);TranslateAnimation anim2 = new TranslateAnimation(0, 0, -relativeSearchMusic.getHeight(), 0);anim2.setDuration(550);relativeSearchMusic.startAnimation(anim2);break;case R.id.btnCancel: //点击了取消relativeSearchMusic.setVisibility(View.INVISIBLE);TranslateAnimation anim3 = new TranslateAnimation(0, 0, 0, -relativeSearchMusic.getHeight());anim3.setDuration(350);relativeSearchMusic.startAnimation(anim3);break;}}
二,音乐列表的获取和显示。
在Android中显示列表,需要用的ListView和Adapter。音乐列表成功显示之后,要做的是能够实现条目点击能够放歌曲。
定义一个继承Service的服务类PlayerMusicServie。用服务调用MediaPlayer提供的方法,完成播放歌曲的需求。关于音乐列表的获取,不同的音乐播放器都会有不同的方案,有的是有多重方案并用。例如说,Android本身有媒体库,可以全盘扫描音乐格式文件,也可以通过网络获取音乐等。通过API文档获取网络上的音乐数据是很常见的一种方式。这里就列举用到的两个百度音乐的接口,一个新歌榜,一个热歌榜。
新歌榜的接口
http://tingapi.ting.baidu.com/v1/restserver/ting?from=qianqian&version=2.1.0&method=baidu.ting.billboard.billList&format=json&type=1&offset=0&size=50
热歌榜的接口
http://tingapi.ting.baidu.com/v1/restserver/ting?from=qianqian&version=2.1.0&method=baidu.ting.billboard.billList&format=json&type=2&offset=0&size=50
type= 整数获取不同的榜单。
- Android应用----音乐播放器----个人第一个完整的项目
- 我的第一个音乐播放器
- 基于Android的音乐播放器项目
- 播放我的第一个音乐
- 我的第一个安卓应用---音乐播放器
- Android 音乐播放器 完整案例分析
- 第一个独立开发的完整Android应用总结。Monitor项目开发系列总结之项目概况
- 个人音乐播放器
- 最简单、简易的android音乐播放器,android开发应用之(音乐播放)
- Android 实战 - 个人APP乐逗项目(内部音乐播放器实现,开源MaskProgressView使用)
- 简单的播放应用内音乐的音乐播放器
- 音乐播放器类的Android项目源码
- 个人项目——音乐播放器(一)
- 个人项目——音乐播放器(二)
- Android开发之第一个小项目--我的MP3播放器(一)
- android 应用开发之音乐播放器
- Android应用开发之音乐播放器
- android应用开发:音乐播放器(1)
- AngularJS 之 Factory vs Service vs Provider
- 第七周 项目2 : 建立链队算法库
- 给圆添加一个阴影效果
- Scott用户测试表
- Servlet 工作原理解析
- Android应用----音乐播放器----个人第一个完整的项目
- 启动spark-shell后出现not found错误
- 嵌入式网络Lwip_part1
- 6.All Operators List - 按字母顺序的全部操作符列表
- ios 指定范围内的随机数
- Debian 8 安装 golang
- Opencv 傅立叶变换 傅立叶逆变换
- Revit+第一个小程序
- 点击两次退出程序