如何将 Flutter 滑块双精度值转换为 int

How do I Convert Flutter slider double value to int

我正在为 BMI 计算器编写代码,我正在使用高度滑块,它 returns 一个双类型一个长的。我尝试了 _startHeight.toInt() 但没有成功。有没有什么方法可以不使用除法来显示标签呢

这是我的滑块代码。

               Slider(
                  value: _startHeight,
                  min: 1,
                  max: 100,
                  onChanged: (newHeight) {
                    setState(() {
                      _startHeight = newHeight;
                      _startHeight.toInt();
                      print(_startHeight);
                    });
                  },
                ),

谢谢。

如果您希望 _startHeight 成为 int,那么我假设您首先将其定义为 int

您正在尝试将 double 分配给 int,然后将此 double 更改为 int。你需要反过来做:

onChanged: (double newHeight) {
  setState(() {
    _startHeight = newHeight.toInt();
    print(_startHeight);
  });
}

如果您的最终目标是在不带小数的字符串中显示值,那么您可以使用 toStringAsFixed:

_startHeight.toStringAsFixed(0);