android - 具有十进制值的 SeekBar

标签 android seekbar

我是否创建了一个使用十进制值的 SeekBar

比如会显示

0.0, 0.1, 0.2, 0.3, ..., 5.5 >、5.65.7、...、9.910.0

最佳答案

SeekBar 默认值为 0 到 100 之间的值。当从 SeekBar 的更改监听器调用 onProgressChanged 函数时,进度号将在 progress 参数中传递。

如果您想将此进度转换为从 0.0 -> 10.0 的小数来显示或处理,您需要做的就是在收到进度值时将进度除以 10,然后将该值转换为 float 。下面是一些示例代码:

aSeekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
    @Override
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
        float value = ((float)progress / 10.0);
        // value now holds the decimal value between 0.0 and 10.0 of the progress
        // Example:
        // If the progress changed to 45, value would now hold 4.5
    }

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

关于android - 具有十进制值的 SeekBar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6197674/

相关文章:

android - 无法从蓝牙麦克风获取音频

android - 打开应用程序时不会出现工具栏,但如果我将设备转为横向,则会出现

Android Vertical Seek Bar 像 Google Play Music App

java - findViewById(R.id.screen) 返回 null

android - 为 seekbar/progressbar Android 使用可缩放位图

带有 SeekBar 的 Android - 防止 'thumb' 在触摸 SeekBar 以拖动/滚动屏幕时移动

android - 我的 Android 手指绘画应用程序将绘画发送到图像上的不规则位置

java - 在两个项目之间共享 Android 测试

android - 如何在android中以垂直方向显示警报框按钮?

java - 使用 EditText 更新 SeekBar