Flutter 在颤振中使用Img的自定义滑块
当我更改滑块上的值时,我尝试返回并显示图像,但出现了一些错误 这是代码滑块 图像是我想在屏幕上显示的模板Flutter 在颤振中使用Img的自定义滑块,flutter,flutter-slider,Flutter,Flutter Slider,当我更改滑块上的值时,我尝试返回并显示图像,但出现了一些错误 这是代码滑块 图像是我想在屏幕上显示的模板 import 'package:flutter/material.dart'; import 'package:haphy_by_aquasense/Pain/ui/widgets/text_and_img.dart'; class PainScale extends StatefulWidget { @override State createState() => _Pai
import 'package:flutter/material.dart';
import 'package:haphy_by_aquasense/Pain/ui/widgets/text_and_img.dart';
class PainScale extends StatefulWidget {
@override
State createState() => _Painscale();
}
class _Painscale extends State<PainScale>{
double pain_value = 0.0;
String pain_text = "No me duele";
@override
Widget build(BuildContext context) {
final text_pain = Container(
height: 100,
width: 400,
margin: EdgeInsets.only(
top: 150,
right: 50,
),
child: Text(
pain_text,
),
);
final pain_scale_slider = Container(
child: Slider(
min: 0,
max: 10,
value: pain_value,
onChanged: (value) {
setState(() {
pain_value = value;
if(pain_value >= 0.0 && pain_value <= 2.0){
TextAndImgPain("Me duele", "assets/img/escala1-2.png");
}
if(pain_value >= 2.0 && pain_value <= 4.0){
TextAndImgPain("Me duele", "assets/img/escala3-4.png");
}
});
},
),
);
return Stack(
alignment: Alignment.center,
children: [
TextAndImgPain("Me duele", "assets/img/escala3-4.png"),
pain_scale_slider
],
);
}
}
在这个img中是屏幕,但是我想在滑块的值改变时改变img
如果您想显示图像是否疼痛值正在改变,那么为什么不使用
onChanged: (value) {
setState(() {
pain_value = value;
if(pain_value >= 0.0 && pain_value <= 2.0){
TextAndImgPain("Me duele", "assets/img/escala1-2.png");
} else if(pain_value > 2.0 && pain_value <= 4.0){
TextAndImgPain("Me duele", "assets/img/escala3-4.png");
} else {'default value here'}
});
},
onChanged:(值){
设置状态(){
痛苦值=价值;
如果(pain_值>=0.0&&pain_值2.0&&pain_值=0.0&&pain_值=2.0&&pain_值,问题是它甚至不会更改图像或文本
onChanged: (value) {
setState(() {
pain_value = value;
if(pain_value >= 0.0 && pain_value <= 2.0){
TextAndImgPain("Me duele", "assets/img/escala1-2.png");
} else if(pain_value > 2.0 && pain_value <= 4.0){
TextAndImgPain("Me duele", "assets/img/escala3-4.png");
} else {'default value here'}
});
},
onChanged: (value) {
setState(() {
pain_value = value;
if(pain_value >= 0.0 && pain_value <= 2.0){
TextAndImgPain("Me duele", "assets/img/escala1-2.png");
}
if(pain_value >= 2.0 && pain_value <= 4.0){
TextAndImgPain("Me duele", "assets/img/escala3-4.png");
}
});
},