收藏 分销(赏)

基于Android平台的音乐播放器设计与实现-PPT.ppt

上传人:天**** 文档编号:2193080 上传时间:2024-05-22 格式:PPT 页数:16 大小:6.62MB
下载 相关 举报
基于Android平台的音乐播放器设计与实现-PPT.ppt_第1页
第1页 / 共16页
基于Android平台的音乐播放器设计与实现-PPT.ppt_第2页
第2页 / 共16页
基于Android平台的音乐播放器设计与实现-PPT.ppt_第3页
第3页 / 共16页
基于Android平台的音乐播放器设计与实现-PPT.ppt_第4页
第4页 / 共16页
基于Android平台的音乐播放器设计与实现-PPT.ppt_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、基于Android平台的音乐播放器设计班 级:指导老师:学 生:1目 录一、课题简介二、需求分析三、概要设计四、详细设计五、效果展示2项目背景随着计算机的广泛运用,手机市场的迅速发展,各种音频视频资源也在网上广为流传,这些资源看似平常,但已经渐渐成为人们生活中必不可少的一部分了。于是各种手机播放器也紧跟着发展起来,但是很多播放器一味追求外观花哨,功能庞大,对用户的手机造成了很多资源浪费,比如CPU,内存等的占用率过高,在用户需要多任务操作时,受到了不小的影响,带来了许多不便,而对于大多数普通用户,许多功能用不上,形同虚设。针对以上各种弊端,选择了开发多语种的音频视频播放器,将各种性能优化,继承

2、播放器的常用功能,满足一般用户听歌的需求。3需求分析主要建设功能:导入本地歌曲文件,选择显示歌词,管理歌单等功能。交互设计:提供良好的交互设计操作简单快捷,按钮及菜单设计合理,合理引导用户使用界面颜色基调相似,操作习惯。风格相似。4名称功能播放暂停音乐在该功能中,点击播放开始播放音乐,同时图标切换成相应的暂停图标,用户可以再次点击该按钮进行暂停操作,按钮也变成播放。上一首、下一首功能当歌曲在播放或者是暂停时用户可以点击相应的上一首下一首进行歌曲的切换,在切换中,如果当歌曲位于歌曲列表的边界时可以正常切换。拖动播放进度条在播放时会有一个进度条显示播放的进度,用户可以拖动进度条来控制播放位置。选择

3、播放模式用户可以自主选择播放模式,单曲循环、随机或者是随机播放模式。下文将对本功能的核心用例进行具体的分析,如下表所示:5概要设计播放器对象之间的交互情况如图以视图树的方式展示Android中界面的布局方式6详细设计播放器主界面是一个Activity,Android工程在每个activity启动的时候会首先执行Oncreate()方法。如下代码:PublicvoidonCreate(BundlesavedInstanceState)super.onCreate(savedInstanceState);setContentView(R.layout.activity_main;该方法主要执行界面

4、的初始化操作,Activity有个设置布局的方法:Context.setContentView(layoutResID),参数为资源ID,该Id在工程目录res/layout下,主界面布局文件名为main。主界面主要采用相对布局(RelativeLayout)。72.播放音轨SeekBar在main.xml文件中,SeekBar的代码如下:上面代码中有参数android:thumb=drawable/pic_14为音轨游标的图片资源播放器最重要的一部分就是音轨与歌曲进度同步的实现。音轨设置了两个TextView用来显示当前歌曲播放的进度时间和歌曲的长度如右图所示8音轨对象SeekBar在歌曲刚

5、开始播放的时候调用方法SeekBar.setMax(),参数传入歌曲的长度。SeekBar.setProgress(1)设置游标的起始进度为1。然后程序运行如下代码:classMybroadextendsBroadcastReceiverOverridepublicvoidonReceive(Contextcontext,Intentintent)/TODOAuto-generatedmethodstubif(intent.getAction().equals(ACTION_MAXTIME)intmaxtime=intent.getIntExtra(maxtime,0);se.setMax(m

6、axtime);time2.setText(+settime(maxtime);if(intent.getAction().equals(ACTION_NOWTIME)intnowtime=intent.getIntExtra(nowtime,0);se.setProgress(nowtime);time.setText(+settime(nowtime);if(intent.getAction().equals(ACTION_LRC)Stringlrc=intent.getStringExtra(geci);/Toast.makeText(MainActivity.this,剧本开始+lrc

7、,Toast.LENGTH_LONG).show();showgeci.setText(+lrc);9大家有疑问的,可以询问和交流大家有疑问的,可以询问和交流可以互相讨论下,但要小声点可以互相讨论下,但要小声点可以互相讨论下,但要小声点可以互相讨论下,但要小声点10if(intent.getAction().equals(ACTION_NOWMUSIC)Stringnowmusic1=intent.getStringExtra(nowmusic);/Toast.makeText(MainActivity.this,剧本开始+lrc,Toast.LENGTH_LONG).show();nowmu

8、sic.setText(正在播放:+nowmusic1);publicStringsettime(inttime)intfen=time/60000;intmiao=time/1000%60;returnfen+:+miao;RunnablemRunnable=newRunnable()Overridepublicvoidrun()/TODOAuto-generatedmethodstubnowtime();handler.postDelayed(mRunnable,1000);113.播放调节功能实现各按钮水平放置,从左到右依次是上一首、播放、下一首功能按钮。用的是布局中的线性布局Linea

9、rLayout,;将其设置为水平,LinearLayout中依次放置播放/暂停,上一首、下一首按钮属性。配置文件代码结构如下:12主要按钮功能实现代码:(1)“上一首”按钮并实现功能OverridepublicvoidonClick(Viewv)/TODOAuto-generatedmethodstubswitch(v.getId()caseR.id.shang:nextmusic(0);lastm.setImageResource(R.drawable.dianji_22);break;(2)“播放”按钮并实现功能caseR.id.play:isplay=!isplay;if(isplay=

10、true)playm.setImageResource(R.drawable.dainji_20);elseplaym.setImageResource(R.drawable.dianji_19);musicplay(isplay);break;(3)“下一首”并实现功能caseR.id.xia:nextmusic(1);nextm.setImageResource(R.drawable.dianji_25);break;134.歌曲列表界面ListView同样有一个监听器list.setOnItemClickListener(newOnItemClickListener()OverridepublicvoidonItemClick(AdapterViewarg0,Viewarg1,intarg2,longarg3);,我们只要实现这个方法,就可以监听鼠标的点击事件,当鼠标点击到每一行时,可以通过publicObjectgetItem(intposition)得到该行上的信息。这样就可以通过Intent将数据传入到其它的Activity。14效果展示音乐播放器在手机上的运行情况音乐播放器在模拟器运行情况15谢 谢16

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 教育专区 > 声乐器乐

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服