【问题标题】:Seek bar set custom min Value寻求栏设置自定义最小值
【发布时间】:2018-12-18 02:12:55
【问题描述】:

我在 android 中使用搜索栏,其最小值为 25,最大值为 85。

我在 XML 中设置最小值和最大值,当我尝试设置最小值时,它是说,它可以从 API 26 获得,而我的 min API 当前是 19。

XML

<SeekBar
            android:id="@+id/mySeekbar"
            style="@style/Widget.AppCompat.SeekBar"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:max="85"
            android:min="25"
            android:progress="25" />

JAVA

mySeekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override
            public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {

                if (seekBar.getProgress() < 25) {
                    seekBar.setProgress(25);
                }
               // Log.i("Progress","Dimming"+(110-seekBar.getProgress())+"Prgress :"+seekBar.getProgress());
            }

            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {

            }

            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {

            }
        });

在 On Change 方法中,我将搜索栏限制在 25 Progress Level 。但是 UI 看起来不太好,是否可以在 25 为最小值时移动起始位置。 [支持 API 19]

【问题讨论】:

  • 计算 25 到 85 之间的进度变化的相对值,并保持 SeekBar 从 0 到 100 。这意味着对你来说 0% 是 25 和 100% 是 85 。并相应地设置步长。
  • 感谢您的评论,尝试做同样的事情。 @ADM

标签: android seekbar android-seekbar


【解决方案1】:

从 25 到 85 所以 它等于从 0 到 60

所以您可以只计算您的值中的差异 (-25) 而不要在 XML 中使用 setMin。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-28
    • 1970-01-01
    • 1970-01-01
    • 2014-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-03
    相关资源
    最近更新 更多