我正在创建一个AlertDialog,但当我尝试在其状态中插入Slider小部件时,声音听起来非常奇怪。如果Slider小部件不在AlertDialog之内,则不会发生这种情况。
我正在制作AlertDialog,但是当我试图在其状态中插入Slider小部件时,声音听起来非常奇怪。如果Slider小部件放在AlertDialog之外,则不会出现这种情况。
new Slider(
onChanged: (double value) {
setState(() {
sliderValue = value;
});
},
label: 'Oi',
divisions: 10,
min: 0.0,
max: 10.0,
value: sliderValue,
)
AlertDialog的完整小部件代码
Future<Null> _showDialog() async {
await showDialog<Null>(
context: context,
builder: (BuildContext context) {
return new AlertDialog(
title: const Text('Criar novo cartão'),
actions: <Widget>[
new FlatButton(onPressed: () {
Navigator.of(context).pop(null);
}, child: new Text('Hello'))
],
content: new Container(
child: new Column(
mainAxisAlignment: MainAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: <Widget>[
new Text('Deseja iniciar um novo cartão com quantos pedidos ja marcados?'),
new Slider(
onChanged: (double value) {
setState(() {
sliderValue = value;
});
},
label: 'Oi',
divisions: 10,
min: 0.0,
max: 10.0,
value: sliderValue,
)
],
),
),
);
}
);
}
一切都在StatefullWidget的State类下。
看起来它没有更新值,当尝试改变值时保持在相同的位置。
更新1
问题在于Slider中有2个必需参数(onChanged, value)
,所以我应该更新这个或者UI保持安静,观看视频以了解应用程序如何运行。
更新2
我还在Github仓库中开了一个问题以获得帮助,如果有人想获取更多信息,可以前往问题#19323