一个 seekBar 的移动会影响另一个 seekBar
Posted
技术标签:
【中文标题】一个 seekBar 的移动会影响另一个 seekBar【英文标题】:movement of one seekBar will affect other seekBar 【发布时间】:2016-11-11 11:29:31 【问题描述】:我的应用屏幕中有 5 个 seekBar 小部件和一个用户可以初始化的“总预算”editText 小部件。 我想实现移动一个 seekBar 以影响另一个 seekBar 移动受“总预算”限制的相反方向的效果。 我怎样才能达到这种效果,是否可以让 seekBars 同时移动?
【问题讨论】:
【参考方案1】:您可以为此使用SeekBar.OnSeekBarChangeListener
。
对于每个搜索栏,您需要设置此侦听器并通过onProgressChanged(SeekBar seekBar, int progress, boolean fromUser)
方法更新其他搜索栏的值,类似于:
seekBar1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener()
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser)
if(fromUser)
// update other seekbars' value
seekBar2.setProgress();
seekBar3.setProgress();
seekBar4.setProgress();
@Override
public void onStartTrackingTouch(SeekBar seekBar)
@Override
public void onStopTrackingTouch(SeekBar seekBar)
);
seekBar2.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener()
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser)
if(fromUser)
// update other seekbars' value
seekBar1.setProgress();
seekBar3.setProgress();
seekBar4.setProgress();
@Override
public void onStartTrackingTouch(SeekBar seekBar)
@Override
public void onStopTrackingTouch(SeekBar seekBar)
);
【讨论】:
以上是关于一个 seekBar 的移动会影响另一个 seekBar的主要内容,如果未能解决你的问题,请参考以下文章