gpt4 book ai didi

android - 如何使用 Android Media Player 搜索栏控制音频?

转载 作者:搜寻专家 更新时间:2023-11-01 08:37:42 25 4
gpt4 key购买 nike

我可以使用安卓媒体播放器播放音频文件。我可以显示进度条和附加的 2 个按钮来暂停和播放音轨。我的问题是我无法使用进度条控制轨道。我想播放音轨以根据将进度条拖动到的位置进行更新。

下面是我的代码

public class MyMediaPlayerView extends AppCompatActivity implements View.OnClickListener {

/**
* var for controller
* restore timestamp today 12:11
*/
SeekBar seek_bar;
Button play_button, pause_button;
MediaPlayer player;
TextView text_shown;
Handler seekHandler = new Handler();


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_launch_webview);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);

getInit();
seekUpdation();
}

Runnable run = new Runnable() {
@Override public void run() {
seekUpdation();
}
};

public void seekUpdation() {
seek_bar.setProgress(player.getCurrentPosition());
seekHandler.postDelayed(run, 1000);

onProgressChanged(seek_bar, seek_bar.getProgress());
}

@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.play_button: text_shown.setText("Playing...");
player.start();
break; case R.id.pause_button: player.pause();
text_shown.setText("Paused...");
}
}

public void onProgressChanged(SeekBar seek_Bar, int progress,
boolean fromUser) {
player.seekTo(progress);
}
}

最佳答案

我是这样做的

seek_bar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
if(fromUser)
player.seekTo(progress);
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {

}

@Override
public void onStopTrackingTouch(SeekBar seekBar) {

}
});

关于android - 如何使用 Android Media Player 搜索栏控制音频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35407578/

25 4 0