草庐IT

从 Navigator 到 MaterialApp 的 routeSettings flutter

全部标签

android - Navigator.pop(context) 抛出异常

我试图实现一个同时具有抽屉和TabBar演示的UI,为此我尝试了以下操作:-import'package:flutter/material.dart';voidmain()=>runApp(newNewApp());classNewAppextendsStatelessWidget{@overrideWidgetbuild(BuildContextcontext){returnnewMaterialApp(home:DefaultTabController(length:3,child:Scaffold(drawer:Drawer(child:ListView(padding:Edge

dart - Flutter "showDialog"与 Navigator.pop()

我的showDialog有问题,当我按下时没有任何反应,但如果我使用Navigator.pushNamed(context,"/screen1")它会起作用。我无法运行Navigator.pop(context),它不会返回任何错误。_showDialog(BuildContextcontext){returnshowDialog(context:context,builder:(BuildContextcontext){returnAlertDialog(title:newText("AlertDialogtitle"),actions:[newFlatButton(child:ne

flutter - 在 Flutter 中创建类 vs. Navigator 的新对象

据我所知,在Flutter中有两种方法可以转到另一个屏幕:创建类的新对象(例如:newShowRoute())导航到类(Navigator.push(context)...)它们之间有什么区别,我们在什么情况下使用第一个或第二个? 最佳答案 导航器是从一个屏幕过渡到另一个屏幕的更自然的方式。这也是平台不可知的,并自动处理向后导航。同时,如果您试图在构建方法中显示不同的View,您将自己处理所有这些后退导航,这绝对不是推荐的方法。放轻松,使用Navigator:) 关于flutter-在F

flutter - 在 Navigator.push 之后聚焦到目标页面的 textfield 时会再次调用 Navigator.push

出现以下现象。通过Navigation.push从FirstPage过渡到NextPage。选择NextPage的TextField。1再次被调用。使用键盘完成。1再次被调用。下面是来源。import'package:flutter/material.dart';voidmain()=>runApp(MyApp());classMyAppextendsStatelessWidget{@overrideWidgetbuild(BuildContextcontext){returnMaterialApp(home:FirstPage(),);}}classFirstPageextendsS

flutter - 为什么标签栏小部件 Navigator.pop(context) 返回黑屏?

我正在使用DefaultTabbarWidget和Alert包。警报包有一个默认的取消按钮。取消按钮有Navigator.pop(context)方法,所以我当前页面标签栏和pop方法正在黑屏。我想pop方法不支持任何页面。如何使用标签栏和导航器设计。(标签页设置默认页)我正在尝试这段代码,但不知道我想要什么。voidmain()=>runApp(App());classAppextendsStatelessWidget{@overrideWidgetbuild(BuildContextcontext){returnMaterialApp(theme:ThemeData.light()

flutter - 使用 Navigator.push (MaterialPageRoute) 而不是 AlertDialog

我想使用Navigator.push(MaterialPageRoute)而不是AlertDialog,因为现在我认为让我的用户拥有一个完整的页面来发布内容而不是一个对话框更好,我将如何编辑我的代码来做这个?提前致谢appBar:AppBar(centerTitle:true,title:Text('hehe',style:TextStyle(fontWeight:FontWeight.bold,fontSize:25.0),),actions:[Padding(padding:constEdgeInsets.only(right:10.0),child:IconButton(icon

flutter - 如何在 MaterialApp 主题中设置 fontSize 的 MediaQuery textScaleFactor

我想在MaterialApp主题中设置MediaQuery,以便在用户更改设置时FontSize遵循用户设置。我尝试创建最终的curlScale=MediaQuery.of(context).textScaleFactor;并相应地在MaterialApp中设置fontSize:20*curlScale但由于“使用不包含MediaQuery的上下文调用MediaQuery.of()”而出现错误。我该如何解决这个问题。Widgetbuild(BuildContextcontext){finalcurlScale=MediaQuery.of(context).textScaleFactor

flutter - 如何防止在 Navigator 中不绘制以前的页面?

我在这里遇到了一个小问题:当我将非全屏小部件推送到导航器时。以前的小部件根本不绘制,导致黑色背景,即使本意是有一个简单的对话框。如何防止这种情况发生?或者有什么简单的解决方法?import'package:flutter/material.dart';voidmain()=>runApp(MyApp());classMyAppextendsStatelessWidget{@overrideWidgetbuild(BuildContextcontext){returnMaterialApp(title:'TheDialogIssue',initialRoute:'/',routes:{'

dart - 创建 MaterialApp 后如何调用方法?

据我了解,创建MaterialApp实例会创建Navigator以及其他一些UI功能。当我的应用程序启动时,我想运行一种方法来检查用户是否登录,如果没有则显示登录页面。我该怎么做呢?下面是我的main.dart的开始finalscaffoldKey=newGlobalKey();finalformKey=newGlobalKey();String_email;String_password;void_submit(){finalform=formKey.currentState;if(form.validate()){form.save();//Email&passwordmatche

flutter - getter 'navigator' 在 null 上被调用

从今天早上开始就一直报这个错,看了stacktrace,追查到runApp方法上的报错,不明白总之,问题是什么,我们将不胜感激:)这是个异常(exception):getter'navigator'wascalledonnull这是我的main.dart文件import'dart:async';import'package:firebase_analytics/firebase_analytics.dart';import'package:firebase_analytics/observer.dart';import'package:flutter/material.dart';im