SeekBar 区域限制

近期项目中涉及到音频录制进度控制,用到了SeekBar。
需求录制暂停时可拖动进度条进行播放,配置如下xml,得到SeekBar的UI:


record.png


    
    
        
            
            
        
    
    
    
        
            
                
                
            
        
    
    
    
        
            
                
                
            
        
    

另需实现播放时播放进度拖动范围限制在已录制范围,即

播放时橙色进度条只能在深灰色进度条范围内拖动

实现方式如下,mSeekBarProgress为已录制进度:

recordSeekbar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
    @Override
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
        if (progress > mSeekBarProgress) {
            recordSeekbar.setProgress(mSeekBarProgress);
        }
    }

    @Override
    public void onStartTrackingTouch(SeekBar seekBar) {
    }

    @Override
    public void onStopTrackingTouch(SeekBar seekBar) {
    }
}

你可能感兴趣的:(SeekBar 区域限制)