如何重定向到下一页而不按带有颤振的按钮?



我想移动到下一页,而不单击带有扑动的按钮。就在改变一个按钮的值,我必须重定向到下一页后,一些延迟没有任何自我交互。这是代码:

initialData: BluetoothDeviceState.disconnected,
builder: (c, snapshot) {
if (snapshot.data == BluetoothDeviceState.connected) {
return ElevatedButton(
child: const Text('CONNECTED'),
onPressed: () => Navigator.of(context).push(
MaterialPageRoute(
builder: (context) => MainScreen())),
);
}

你可以试试:

if (snapshot.data == BluetoothDeviceState.connected) {
WidgetsBinding.instance.addPostFrameCallback((_) {
Navigator.of(context).push(
MaterialPageRoute(builder: (context) => MainScreen()));
});
return Text('CONNECTED');
}

当连接依赖于bool时,您可以执行

if (snapshot.data == BluetoothDeviceState.connected) {
// a frame delay
WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
Navigator.of(context)
.push(MaterialPageRoute(builder: (context) => MainScreen()));
});
}

最新更新