导入都很好,只是在活动更改时出错。
public class Audio extends AppCompatActivity implements Runnable
{
private Button startB;
private Button stopB;
private Button pauseB;
private Button videoB;
private MediaPlayer soundplayer;
private SeekBar soundSeek;
private Thread soundThread;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_audio);
startB=(Button) findViewById(R.id.start);
stopB=(Button) findViewById(R.id.stop);
pauseB=(Button) findViewById(R.id.pause);
videoB=(Button) findViewById(R.id.play);
soundplayer=MediaPlayer.create(this.getBaseContext(),R.raw.podmeter);
setupListeners();
soundThread=new Thread(this);
soundThread.start();
}
private void setupListeners()
{
startB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
soundplayer.start();
}
});
pauseB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
soundplayer.pause();
}
});
stopB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
soundplayer.stop();
soundplayer=MediaPlayer.create(getBaseContext(),R.raw.podmeter);
}
});
soundSeek.setOnSeekBarChangeListener(new
SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean
fromUser) {
if (fromUser)
{
soundplayer.seekTo(progress);
}
}
一切似乎都正常。编译代码或在设备上运行时没有错误。在一项活动中,我有两个名为“音频”和“视频”的按钮。当我单击音频时,应该打开此活动。但是由于某种原因它没有打开。
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
}
@Override
public void run() {
int currentPosition=0;
int soundTotal=soundplayer.getDuration();
while(soundplayer!=null && currentPosition<soundTotal)
{
try {
Thread.sleep(300);
currentPosition=soundplayer.getCurrentPosition();
}
catch (InterruptedException soundException)
{
return;
}
catch (Exception otherException)
{
return;
}
soundSeek.setProgress(currentPosition);
}
}
}