1

当我拖动搜索栏时,屏幕中显示的框架不会改变,直到我停止拖动。在 Android Library 的 VideoView 中,帧可以在拖动搜索栏时平滑变化。

4

1 回答 1

1

实现 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);
    }
};
于 2013-04-22T01:32:35.380 回答