我有一個簡單的播放器。 爲了在SeekBar和MediaPlayer之間創建'連接',我被任何地方的seekbar所觸及,並且與播放器進行同步搜索。在你看來,問題在哪裏? 我能做什麼?
如果您在這方面的份額有一個例子是seekbar和android中的播放器
我的代碼:
public class MediaPlaybackActivity extends Activity implements OnClickListener {
SeekBar seek_bar;
Button play_button, pause_button;
MediaPlayer player;
Handler seekHandler = new Handler();
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
getInit();
seekUpdation();
}
public void getInit() {
seek_bar = (SeekBar) findViewById(R.id.seek_bar);
play_button = (Button) findViewById(R.id.play_button);
pause_button = (Button) findViewById(R.id.pause_button);
play_button.setOnClickListener(this);
pause_button.setOnClickListener(this);
player = MediaPlayer.create(this, R.raw.win8);
seek_bar.setMax(player.getDuration());
seek_bar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seek_bar) {
}
@Override
public void onStartTrackingTouch(SeekBar seek_bar) {
}
@Override
public void onProgressChanged(SeekBar seek_bar, int progress, boolean fromUser) {
if(player != null && fromUser){
player.seekTo(progress * 1000);
}
}
});
}
Runnable run = new Runnable() {
@Override
public void run() {
seekUpdation();
}
};
public void seekUpdation() {
seek_bar.setProgress(player.getCurrentPosition());
seekHandler.postDelayed(run, 1000);
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.play_button:
player.start();
break;
case R.id.pause_button:
player.pause();
}
}}
你的代碼格式是錯誤的,用'只爲單行 – hendrix