android开发音乐播放器之进度条
16lz
2021-01-26
我刚学习android没有多长时间,前几天做了一个android版本的音乐播放器,没想到遇到的第一个问题就是播放的进度条,经过查阅文档,找到了解决的方法,我的方法不一定是最好,只是想和大家分享一下,互相学习。
public void onClick(View v) {
ImageButton b=(ImageButton)v; //把View转换成ImageButton
switch(b.getId()) //获得单击按钮的id值
{
case R.id.starButton: //单击了star按钮 开始播放
if(musicPlayer.isPlaying()) //如果正在播放,将重置
{
musicPlayer.reset();
}
try {
musicPlayer.setDataSource("sdcard/bb.mp3");
musicPlayer.prepare();
musicPlayer.start();
musicBar.setMax(musicPlayer.getDuration());
new Thread(new Runnable(){
@Override
public void run() {
while(true){
musicBar.setProgress(musicPlayer.getCurrentPosition()); //获得当前播放的进度值
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}}).start();
}catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(isPause) //暂停后,播放
{
musicPlayer.start();
isPause=false;
}
public void onClick(View v) {
ImageButton b=(ImageButton)v; //把View转换成ImageButton
switch(b.getId()) //获得单击按钮的id值
{
case R.id.starButton: //单击了star按钮 开始播放
if(musicPlayer.isPlaying()) //如果正在播放,将重置
{
musicPlayer.reset();
}
try {
musicPlayer.setDataSource("sdcard/bb.mp3");
musicPlayer.prepare();
musicPlayer.start();
musicBar.setMax(musicPlayer.getDuration());
new Thread(new Runnable(){
@Override
public void run() {
while(true){
musicBar.setProgress(musicPlayer.getCurrentPosition()); //获得当前播放的进度值
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}}).start();
}catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(isPause) //暂停后,播放
{
musicPlayer.start();
isPause=false;
}
更多相关文章
- Android:布局实例之模仿微信Tab
- Android(安卓)studio 音乐播放器提交
- android studio 添加按钮事件的三种方法
- 现在有三个按钮,在FrameLayout下如何让这三个按钮以水平方向分别
- Android(安卓)Studio中Run按钮是灰色的快速解决方法
- libdgx使用初步
- Android(安卓)设备 USB 通用调试驱动的安装方法
- Android学习笔记——常用的基本UI组件及其常用属性值和相关方法
- Android(安卓)7.0 Audio: 按键调节音量的调用过程