播放音乐ProgressBar进度条

<ProgressBar android:id="@+id/progreso" 
        style="?android:attr/progressBarStyleHorizontal" 
import android.app.Activity; 
import android.media.MediaPlayer; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.ProgressBar; 
import android.widget.TextView; 
 
public class Player extends Activity implements Runnable, OnClickListener{ 
 
   
private TextView Status; 
   
private ProgressBar progressBar; 
   
private Button StartMedia; 
   
private Button Stop; 
   
private MediaPlayer mp;       
 
   
@Override 
   
public void onCreate(Bundle savedInstanceState) { 
       
super.onCreate(savedInstanceState); 
        setContentView
(R.layout.main); 
 
       
Status = (TextView) findViewById(R.id.Status); 
        progressBar
= (ProgressBar) findViewById(R.id.progressBar); 
       
StartMedia = (Button) findViewById(R.id.StartMedia); 
       
Stop = (Button) findViewById(R.id.Stop); 
 
       
StartMedia.setOnClickListener(this); 
       
Stop.setOnClickListener(this);                 
   
}         
 
@Override 
public void onClick(View v) { 
       
if(v.equals(StartMedia)){ 
           
if(mp != null && mp.isPlaying()) return; 
            mp
= MediaPlayer.create(Player.this, R.raw.exodus_piranha); 
            mp
.start();                
           
Status.setText(R.string.PlayingMedia);          
            progressBar
.setVisibility(ProgressBar.VISIBLE); 
            progressBar
.setProgress(0); 
            progressBar
.setMax(mp.getDuration()); 
           
new Thread(this).start(); 
       
} 
 
       
if(v.equals(Stop) && mp!=null){ 
            mp
.stop(); 
            mp
= null;             
           
Status.setText(R.string.Stopped); 
            progressBar
.setVisibility(ProgressBar.GONE); 
       
} 
 
} 
 
   
@Override 
   
public void run() { 
       
int CurrentPosition= 0; 
       
int total = mp.getDuration(); 
       
while(mp!=null && CurrentPosition<total){ 
           
try { 
               
Thread.sleep(1000); 
               
CurrentPosition= mp.getCurrentPosition(); 
           
} catch (InterruptedException e) { 
               
return; 
           
} catch (Exception e){ 
               
return; 
           
}             
            progressBar
.setProgress(CurrentPosition); 
       
} 
   
} 
 
 
} 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值