Es gibt keine Methode popNamed
genannt. Ich nehme an, du meinst pushNamed
.
Sie können die Zurück-Taste entfernen, indem Sie ein new Container()
als leading
Argument an Ihre AppBar
übergeben.
Wenn Sie sich jedoch dabei befinden, möchten Sie wahrscheinlich nicht, dass der Benutzer die Zurück-Taste des Geräts drücken kann, um zur vorherigen Route zurückzukehren. Anstatt pushNamed
aufzurufen, versuchen Sie, Navigator.pushReplacementNamed
aufzurufen, damit die frühere Route verschwindet.
Das vollständige Codebeispiel für den letzteren Ansatz ist unten.
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(),
},
);
}
}
Ja, ich habe meine Befehle gemischt. Ich werde es versuchen, Danke für Ihre Hilfe. – Robert
@Collin, pushReplacementNamed scheint die Möglichkeit nicht zu entfernen, mit dem Zurückpfeil des Systems zurückzukehren. – Jackpap