【发布时间】:2021-05-19 13:20:06
【问题描述】:
有什么方法可以改变步进器的继续和取消按钮的文本标签吗?步进器似乎是我想做的事情的完美选择(带有几个“阶段”的长格式),在我开始尝试从头开始构建一个之前,我想我可能会问到按钮的其他标签..
有人知道这是否/怎么可能吗?
【问题讨论】:
有什么方法可以改变步进器的继续和取消按钮的文本标签吗?步进器似乎是我想做的事情的完美选择(带有几个“阶段”的长格式),在我开始尝试从头开始构建一个之前,我想我可能会问到按钮的其他标签..
有人知道这是否/怎么可能吗?
【问题讨论】:
是的,您可以通过提供controlsBuilder 回调来实现。它必须是一个具有其他两个函数(onStepContinue 和 onStepCancel)的函数,这些函数是您必须传递给您将创建的新按钮的操作,以便它们按应有的方式运行。
然后你可以声明任何你想要的东西(在这种情况下是一行有两个按钮),只要你传递两个函数(onStepContinue 和onStepCancel)让它们按预期工作:
Stepper(
controlsBuilder: (BuildContext context,
{VoidCallback? onStepContinue, VoidCallback? onStepCancel}) {
return Row(
children: <Widget>[
TextButton(
onPressed: onStepContinue,
child: const Text('NEXT'),
),
TextButton(
onPressed: onStepCancel,
child: const Text('EXIT'),
),
],
);
},
steps: const <Step>[
Step(
title: Text('A'),
content: SizedBox(
width: 100.0,
height: 100.0,
),
),
Step(
title: Text('B'),
content: SizedBox(
width: 100.0,
height: 100.0,
),
),
],
);
【讨论】: