在执行诸如更改主题或更改当前语言之类的操作后重建应用程序,我使用(easy_localization:^ 3.0.0)包来更改语言 轻松本地化( 孩子:MyApp(当前模式:当前模式), 支持的语言环境:const [ 区域设置('ar'), 区域设置('en'), ], 路径:'资产/翻译', startLocale: const Locale('ar'), assetLoader: const CodegenLoader(), ),
void main() {
runApp(
Phoenix(
child: App(),
),
);
}
Phoenix.rebirth(context);
或者利用状态管理解决方案,例如 Riverpod。
您将设置放在提供程序中,并在状态更新时应更改的页面上观看它。
我的解决方案是通过从堆栈中删除以前的页面来导航到启动页面。
例如,如果您使用 go_router 包,则可以使用 context.go(your_splash_page)