flutter - 在页面焦点事件上出现抖动?

标签 flutter dart state

initState()总是会在页面初始化时调用,这很棒。

但是,如果我有2个屏幕怎么办

屏幕1导航到屏幕2。现在,当您按第2页(弹出)时,第1页上是否有一个事件知道我们又回来了?

换句话说,屏幕1是否可以在第2页的背面按下触发事件?

这对于设置状态(例如,在屏幕2上更改的全局变量)很有用,因此屏幕1可以相应地更新

最佳答案

您可以await Navigator.push(),这将在弹出路由时解决。

在Screen1中:

await Navigator.push(context, Screen2);
// Do something when Screen2 is popped

您还可以使用Screen2将数据从Screen1传递到pop():

在Screen2中:

Navigator.pop(context, data);

在Screen1中:

final dataFromScreen2 = await Navigator.push(context, Screen2);

关于flutter - 在页面焦点事件上出现抖动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62046526/

相关文章:

datatable - Flutter DataTable - 点击行

reactjs - react 清理功能不清理状态

c# - 在枚举中明确定义标志组合

ios - CocoaPods 在 Podfile 中找不到 pod XXXX 的兼容版本

android-studio - Android Studio中有添加Flutter pub包的快捷方式吗?

dart - 在这种情况下,中心和扩展之间的区别?

windows - Windows 上的 Docker 与 Dart Docker Image

state - ReactJS 从子组件修改父状态

ios - Flutter BoringSSL-GRPC 无法安装

flutter - 使同一行中的另一个小部件可见后如何避免小部件位移?