音乐播放器上一首下一首

来源:互联网 发布:linux net snmp使用 编辑:程序博客网 时间:2024/06/05 04:17
package com.example.kugou;


import java.util.Timer;
import java.util.TimerTask;
import android.app.Activity;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
import android.widget.SeekBar;
import android.widget.TextView;
import android.widget.SeekBar.OnSeekBarChangeListener;


public class TwoActivity extends Activity implements OnClickListener{
private TextView tv_fan,tv_time,tv_sumtime;
private SeekBar my_seekbar;
private ImageView iv_zuo,iv_zhong,iv_you;
private MediaPlayer mediaPlayer;
private Handler handler;
private String position;
private int duration;
private Timer timer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_two);
handler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (msg.what==100) {
String curr=(String) msg.obj;
tv_time.setText(curr);
}else if (msg.what==101) {
int progress=(Integer) msg.obj;
my_seekbar.setProgress(progress);
}
}
};
tv_fan=(TextView) findViewById(R.id.tv_fan);
iv_zuo=(ImageView) findViewById(R.id.iv_zuo);
iv_zhong=(ImageView) findViewById(R.id.iv_zhong);
iv_you=(ImageView) findViewById(R.id.iv_you);
tv_time=(TextView) findViewById(R.id.tv_time);
tv_sumtime=(TextView) findViewById(R.id.tv_sumtime);
my_seekbar=(SeekBar) findViewById(R.id.my_seekbar);
Intent intent = getIntent();
position = intent.getStringExtra("position");
tv_fan.setOnClickListener(this);
iv_you.setOnClickListener(this);
iv_zhong.setOnClickListener(this);
iv_zuo.setOnClickListener(this);
mediaPlayer = new MediaPlayer();



my_seekbar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
if (fromUser) {
mediaPlayer.seekTo(progress);
}
}
});
}


@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.tv_fan:
mediaPlayer.stop();
finish();
break;
case R.id.iv_zuo:

break;
case R.id.iv_zhong:
if(mediaPlayer.isPlaying()){
mediaPlayer.pause();
}else{
play(position);
}
break;
case R.id.iv_you:

break;
}
}
private void play(String position) {
try {
mediaPlayer.setDataSource(position);
mediaPlayer.prepare();
} catch (Exception e) {
e.printStackTrace();
}
mediaPlayer.start();
duration = mediaPlayer.getDuration();
my_seekbar.setMax(duration);
String sum = Time.TimeFormat(duration);
tv_sumtime.setText(sum);
timer=new Timer();
TimerTask task=new TimerTask() {

@Override
public void run() {
int currentPosition = mediaPlayer.getCurrentPosition();
String currentpositon = Time.TimeFormat(currentPosition);
Message message=Message.obtain();
message.what=100;
message.obj=currentpositon;
handler.sendMessage(message);

Message msg=Message.obtain();
msg.what=101;
msg.obj=currentPosition;
handler.sendMessage(msg);
}
};
timer.schedule(task, 0, 1000);
};

}
0 0
原创粉丝点击