我想知道,如果有人知道一种方法,以删除显示在appBar在颤振应用程序,当你使用Navigator。pushNamed转到另一个页面。我不希望它出现在这个结果页面上的原因是它来自导航,我希望用户使用注销按钮,这样会话就可以重新开始。
当前回答
只是让它透明,没有行动,而现在
AppBar(
leading: IconButton(
icon: Icon(
Icons.arrow_back,
color: Colors.white.withOpacity(0),
),
onPressed: () {},
),
其他回答
如果导航到另一个页面。可以使用Navigator.pushReplacement()。如果你从登录导航到主屏幕,它可以被使用。或者你可以用。 AppBar (automaticallyImplyLeading: false)
SliverAppBar ( automaticallyImplyLeading:假的,}
只是让它透明,没有行动,而现在
AppBar(
leading: IconButton(
icon: Icon(
Icons.arrow_back,
color: Colors.white.withOpacity(0),
),
onPressed: () {},
),
您可以通过传递一个空的新Container()作为AppBar的前导参数来删除返回按钮。
如果你发现自己这样做了,你可能不希望用户能够按下设备的后退按钮回到之前的路线。与其调用pushNamed,不如尝试调用Navigator。pushReplacementNamed将导致先前的路由消失。
函数pushReplacementNamed将删除后堆栈中的先前路由,并用新路由替换它。
后者的完整代码示例如下。
import 'package:flutter/material.dart';
class LogoutPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Scaffold(
appBar: new AppBar(
title: new Text("Logout Page"),
),
body: new Center(
child: new Text('You have been logged out'),
),
);
}
}
class MyHomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Scaffold(
appBar: new AppBar(
title: new Text("Remove Back Button"),
),
floatingActionButton: new FloatingActionButton(
child: new Icon(Icons.fullscreen_exit),
onPressed: () {
Navigator.pushReplacementNamed(context, "/logout");
},
),
);
}
}
void main() {
runApp(new MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
title: 'Flutter Demo',
home: new MyHomePage(),
routes: {
"/logout": (_) => new LogoutPage(),
},
);
}
}
automaticallyImplyLeading:
这将检查我们是否想在应用程序栏上应用back小部件(leading小部件)。 如果automcallyimplyleading为false,则自动将空格赋给标题,如果引导小部件为true,则此参数无效。
void main() {
runApp(
new MaterialApp(
home: new Scaffold(
appBar: AppBar(
automaticallyImplyLeading: false, // Used for removing back buttoon.
title: new Center(
child: new Text("Demo App"),
),
),
body: new Container(
child: new Center(
child: Text("Hello world!"),
),
),
),
),
);
}
推荐文章
- 在Flutter中Column的子元素之间的空间
- Visual Studio代码- URI的目标不存在" package:flutter/material.dart "
- Flutter:升级游戏商店的版本代码
- 在一个子树中有多个英雄共享相同的标签
- 如何检查Flutter应用程序是否正在调试中运行?
- 在Flutter中向有状态小部件传递数据
- 未处理异常:ServicesBinding.defaultBinaryMessenger在绑定初始化之前被访问
- 出现键盘时,Flutter小部件将调整大小。如何预防这种情况?
- 颤振-换行文本
- 添加一个启动屏幕颤振应用程序
- 在flutter中等同于wrap_content和match_parent ?
- 多行文本字段在扑动
- 如何在颤振文本下划线
- 在Dart中命名参数和位置参数之间有什么区别?
- 如何在CamelCase中部分浏览源代码(而不是整个单词)?