草庐IT

iseries-navigator

全部标签

dart - 如何在 Flutter 中通过 Navigator 测试导航

假设我在Flutter中使用WidgetTester测试了一个屏幕。有一个按钮,通过Navigator执行导航。我想测试该按钮的行为。小部件/屏幕classMyScreenextendsStatefulWidget{MyScreen({Keykey}):super(key:key);@override_MyScreenStatecreateState()=>_MyScreenScreenState();}class_MyScreenStateextendsState{@overrideWidgetbuild(BuildContextcontext){returnScaffold(bod

navigation-drawer - Flutter 抽屉导航汉堡图标颜色变化

抽屉导航的汉堡图标颜色没有改变。默认为黑色。我想改变这个图标的颜色,我卡住了,帮我改变这个图标的颜色。这是我的代码。classTestextendsStatefulWidget{@override_TestStatecreateState()=>new_TestState();}class_TestStateextendsState{@overrideWidgetbuild(BuildContextcontext){returnnewScaffold(drawer:newDrawer(),appBar:newAppBar(title:newText("NavigationDrawer"

navigation - 实际导航的 Flutter Navigation Drawer

我有一个简单的Scaffold,带有一个抽屉和一个主体。我想在抽屉中选择一个项目并让脚手架的主体导航到一个新View。我发现的大多数方法(likethis)只是使用有状态小部件并在点击抽屉项目时更改其状态。然而,这完全忽略了应用程序的导航堆栈,并且按返回不会按预期返回到上一个View。另一方面,在单击项目时使用Navigator.of(context).push...会使用导航堆栈,但会更改整个屏幕,这也不是我想要的.我尝试为脚手架的主体创建一个新的自定义导航器,但在从Drawer访问NavigatorState时遇到问题。这对我来说似乎是一个常见问题(例如,所有谷歌应用程序都以这种方

dart - 如何在 Flutter 中的 navigator.pop(context) 之后显示 snackbar ?

我们需要关闭一个屏幕并打开第二个屏幕。并在第一个屏幕的第二个屏幕上显示snackbar。我尝试使用Navigator.push,但是这个屏幕已经打开并且我们有这个错误Badstate:Streamhasalreadybeenlistenedto. 最佳答案 我建议你使用Flushbar插件代替Snackbar,它易于使用,它会处理所有事情,你可以在很大程度上自定义它。Snackbar需要一个脚手架祖先才能工作,但是Flushbar没有,它自己处理所有额外的东西,并提供了大量很酷的功能。FlushbarPluginhere

dart - Flutter:使用 navigator.dart 时断言失败

我是Flutter的新手,正在玩弄它。所以,请耐心等待我。单击PopupMenuButton的特定菜单项时会引发以下异常,但总是仅第二次:'package:flutter/src/widgets/navigator.dart':Failedassertion:line1846pos12:'!_debugLocked':isnottrue.这里是设置:为了指定菜单项,定义了以下类:classPopupMenuChoice{constPopupMenuChoice({this.title,this.pageRoute});finalStringtitle;finalMaterialPage

flutter - 查看 Flutter Navigator 的堆栈

在执行过程中,有没有办法让开发者看到Navigator堆栈的状态?我正在使用VisualStudioCode和AndroidStudio。例如:NavigatorRouteARouteBRouteDetc. 最佳答案 以下步骤:在要检查的地方设置断点,该断点必须在具有context的builder函数内,并在Debug模式下运行将应用运行到断点打开“评估表达式”评估Navigator.of(context)检查_history在我的示例中,您可以看到历史记录中有2条路线,以及所有相关的可调试数据。希望对你有帮助

Flutter Navigation 弹出到索引 1

我正在递归地将路线添加到导航器。可能有20个或更多View。Pop像宣传的那样工作,但我想弹出到索引1并删除所有推送历史记录。有没有办法用类似...returntoIndex0...newListTile(title:newRaisedButton(child:newText("POP"),onPressed:(){varroute=newMaterialPageRoute(builder:(BuildContextcontext)=>newNextPage3(value:"hitherefrom3"),);Navigator.pop(context);},),),

navigation - block 、 flutter 和导航

所以和大多数人一样,我是Bloc的新手,我对Bloc和flutter和dart感到很陌生。我用谷歌搜索,浏览了这里的帖子,但没有找到任何答案。所以这是关于使用bloc和flutter进行导航。以登录为例。所以有一个登录页面,后面有一个块,在某些时候有人按下按钮登录。所以我们可以调用bloc中的一个函数来进行验证。我认为这违反了严格的方法,但我看到人们这样做。但是,如果登录成功,您如何导航到下一个屏幕?你不应该在一个街区中导航吗?但是,如果该登录页面使用StreamBuilder来更改状态,那么您也不能在构建器中添加导航,对吗?您无法返回导航,只能返回小部件。initstate是您可以导

flutter - 如何将 BottomNavigationBar 与 Navigator 一起使用?

BottomNavigationBar的FlutterGallery示例在Scaffold的主体中使用FadeTransitions的Stack。我觉得如果我们可以使用Navigator切换页面会更简洁(也更容易制作动画)。有这方面的例子吗? 最佳答案 intindex=0;@overrideWidgetbuild(BuildContextcontext){returnnewScaffold(body:newStack(children:[newOffstage(offstage:index!=0,child:newTickerMo

flutter - 使用不包含 Navigator 的上下文请求的 Navigator 操作

我正在尝试在onTap中启动新屏幕,但出现以下错误:NavigatoroperationrequestedwithacontextthatdoesnotincludeaNavigator.我用来导航的代码是:onTap:(){Navigator.of(context).pushNamed('/settings');},我在我的应用中设置了如下路线:routes:{'/settings':(BuildContextcontext)=>newSettingsPage(),},我尝试使用股票示例应用程序复制代码。我查看了Navigator和Route文档,但无法弄清楚如何使上下文包含Navi