0

我正在我的颤振项目中实现弯曲的导航栏。但我无法识别为什么数据没有传递到第二页(即 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
        ),),
      ),
    );
  }
}
4

0 回答 0