【问题标题】:Issue with SeekBar onProgressChanged()SeekBar onProgressChanged() 的问题
【发布时间】:2014-12-25 17:59:31
【问题描述】:

我有一些具体要求。我有一个搜索栏。现在假设进度为 0,所以当我增加搜索栏时,它必须直接到 50,当我增加搜索栏时,它必须直接到 100。它工作正常。但是现在当我减少进度时,它必须再次变为 50,当我再次减少时,它必须再次变为 0。所以最后两个步骤没有发生。

@Override
        public void onProgressChanged(SeekBar seekBar, int progress,
                boolean fromUser) {
            progress_value.setText(progress + "");
            if (progress > 1 && progress <= 50) {
                seek_bar.setProgress(50);
            }
            //seekBar.setSaveEnabled(true);
            if (progress ==100 ) {
                if(progress <100)
                seek_bar.setProgress(50);
            }

            if (progress > 50 && progress < 100) {
                seek_bar.setProgress(100);
            }
        }

【问题讨论】:

标签: android seekbar android-seekbar


【解决方案1】:

对逻辑进行一些更改,例如,

Boolean flag = true, flag1 = true;
seek_bar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {
            // TODO Auto-generated method stub

            int a = seekBar.getProgress();

            if (flag) {
                if (a <= 50 && a > 1) {
                    seek_bar.setProgress(50);
                    flag = false;
                }
            } else {
                if (a <= 50 && a > 1) {
                    seek_bar.setProgress(00);
                    flag = true;
                }
            }
            if (flag1) {
                if (a >= 50 && a < 100) {
                    seek_bar.setProgress(100);
                    flag1 = false;
                }
            } else {
                if (a >= 50 && a < 100) {
                    seek_bar.setProgress(50);
                    flag1 = true;
                }
            }

        }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多