我正在我的颤振项目中实现弯曲的导航栏。但我无法识别为什么数据没有传递到第二页(即 notification.dart 页面)。相同的数据显示在第一页(即 home.dart 页面)但不在第二页(即 notification.dart 页面)
这是我的代码:
应用栏代码:
Widget aapBarSection(String title, Color color, BuildContext context){
return AppBar(
title: Text(title, style:TextStyle(fontFamily: 'Poppins-Regular'), ),
centerTitle: true,
backgroundColor: color,
actions: [
FlatButton(
child: Text('Logout', style: TextStyle(color: Colors.white)),
onPressed: () async{
SharedPreferences preferences = await SharedPreferences.getInstance();
preferences.setBool("isLogin", false);
Navigator.of(context).pushNamed('/login');
},
)
],
leading: IconButton(
icon: Icon(Icons.arrow_back),
onPressed: (){
exit(0);
},
),
);
}
导航栏的代码:
int currentIndex = 0;
Widget navBarSection(Color color, Color btnColor){
return CurvedNavigationBar(
index: 0,
items:
[
Icon(Icons.home, color: Colors.white),
Icon(Icons.notifications, color: Colors.white),
Icon(Icons.menu, color: Colors.white),
Icon(Icons.history, color: Colors.white),
Icon(Icons.person, color: Colors.white),
],
color: color,
buttonBackgroundColor: btnColor,
animationCurve: Curves.easeInOut,
animationDuration: Duration(milliseconds: 600),
onTap: (index){
setState(() {
currentIndex = index;
});
},
);
}
void setState(Null Function() param0) {
}
home.dart 代码:
import 'package:thehelpdesk/widgets/appbar.dart';
import 'package:thehelpdesk/widgets/navigation_bar.dart';
class HomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: aapBarSection('Home',Colors.blueAccent[700],context),
bottomNavigationBar: navBarSection(
Colors.blueAccent[700],
Colors.blueAccent[700],
),
body: Container(
color: Colors.grey,
child: Text('abcd', style: TextStyle(
fontSize: 50,
color: Colors.black
),),
),
);
}
}
notification.dart 代码:
import 'package:thehelpdesk/widgets/appbar.dart';
import 'package:thehelpdesk/widgets/navigation_bar.dart';
class NotificationPage extends StatefulWidget {
@override
_NotificationPageState createState() => _NotificationPageState();
}
class _NotificationPageState extends State<NotificationPage> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: aapBarSection('Notification',Colors.blueAccent[700],context),
bottomNavigationBar: navBarSection(
Colors.blueAccent[700],
Colors.blueAccent[700],
),
body: Container(
color: Colors.grey,
child: Text('abcd', style: TextStyle(
fontSize: 50,
color: Colors.black
),),
),
);
}
}