【发布时间】:2019-04-01 23:10:58
【问题描述】:
我是一名 iOS 开发人员,现在正在试用 Flutter。
作为标题,我想要实现的是让一个类像“经理”一样,在应用程序启动时控制我的页面路由。
例如在 iOS 中,我可以检查 AppDelegate (didFinishedLaunchingWithOptions) / ViewController (ViewDidLoad/Appear) 中的“Bool”并更改 rootViewController 或推送到所需的 ViewController 取决于“Bool”,例如“isLogin”而是推送到 LoginViewController / LoggedViewController。
我知道我可以对用户交互进行 Push,例如监听 IconButton 的 onTap。但我不知道如何“自动”做到这一点。
据我所知,Flutter 中的 'build(context)' 与 iOS 中的 'viewDidLoad' 类似,但它是专门针对 UI 的,那么我可以将逻辑放在哪里?
【问题讨论】:
-
您可以根据“initState”中的布尔值触发函数。在创建“StatefulWidget”时,可以调用“initState”,就像flutter中的viewDidLoad。
-
@Daibaku 谢谢你的回答。我尝试直接在“initState”中调用“Navigator.of(context).push”,错误爆棚。
-
@Daibaku 你能提供一个工作示例,显示应用启动时通过布尔值自动推送到不同的 StatefulWidget 吗?
标签: ios dart flutter flutter-layout