1
탐색 막대를 끌면 드래그를 중지 할 때까지 화면에 표시된 프레임이 변경되지 않습니다. Android 라이브러리의 VideoView에서 탐색 바를 드래그하는 동안 프레임이 부드럽게 변경 될 수 있습니다.vitamio에서 seekbar를 드래그하는 동안 즉석 찾기를 구현하는 방법
탐색 막대를 끌면 드래그를 중지 할 때까지 화면에 표시된 프레임이 변경되지 않습니다. Android 라이브러리의 VideoView에서 탐색 바를 드래그하는 동안 프레임이 부드럽게 변경 될 수 있습니다.vitamio에서 seekbar를 드래그하는 동안 즉석 찾기를 구현하는 방법
SeekBar 'onSeekBarChangeListener 구현
private OnSeekBarChangeListener mSeekListener = new OnSeekBarChangeListener() {
public void onStartTrackingTouch(SeekBar bar) {
mDragging = true;
show(3600000);
mHandler.removeMessages(SHOW_PROGRESS);
if (mInstantSeeking)
mAM.setStreamMute(AudioManager.STREAM_MUSIC, true);
if (mInfoView != null) {
mInfoView.setText("");
mInfoView.setVisibility(View.VISIBLE);
}
}
public void onProgressChanged(SeekBar bar, int progress, boolean fromuser) {
if (!fromuser)
return;
long newposition = (mDuration * progress)/1000;
String time = StringUtils.generateTime(newposition);
if (mInstantSeeking)
mPlayer.seekTo(newposition);
if (mInfoView != null)
mInfoView.setText(time);
if (mCurrentTime != null)
mCurrentTime.setText(time);
}
public void onStopTrackingTouch(SeekBar bar) {
if (!mInstantSeeking)
mPlayer.seekTo((mDuration * bar.getProgress())/1000);
if (mInfoView != null) {
mInfoView.setText("");
mInfoView.setVisibility(View.GONE);
}
show(sDefaultTimeout);
mHandler.removeMessages(SHOW_PROGRESS);
mAM.setStreamMute(AudioManager.STREAM_MUSIC, false);
mDragging = false;
mHandler.sendEmptyMessageDelayed(SHOW_PROGRESS, 1000);
}
};