我正在try 使用onPressed切换到Flutter 项目中的另一个屏幕,但没有产生任何结果,不确定原因是什么.

以下是主页页面:

                                          onPressed: () {
                                            const User_Profile();
                                            print("Hello");
                                          },

以下是用户配置文件:

class User_Profile extends StatefulWidget {
  const User_Profile({Key? key}) : super(key: key);
 
  @override
  State<User_Profile> createState() => _user_profileState();
}
 
class _user_profileState extends State<User_Profile> {
  @override
  Widget build(BuildContext context) {
    return const Text("User Profile");
  }
}
 

问题: 如何使用OnPress切换屏幕?注意到每次打印用于调试的单词Hello,我做错了什么?

推荐答案

您必须使用函数而不是您的类,如下所示:

Navigator.push(context, MaterialPageRoute(builder: (context)=>User_profile()));

这就叫:

 onPressed: () {
                                       Navigator.push(context, MaterialPageRoute(builder: (context)=>User_profile()));
                                      },

而不是这样:

   onPressed: () {
                                        const User_Profile();
                                        print("Hello");
                                      },

Flutter相关问答推荐

Flutter -修改子小部件中的AppBar

创建后检索FiRestore文档ID

带有可滚动页面(不包括分页区)的Flutter 页面视图

使用ThemeProvider不在亮模式和暗模式之间切换

Riverpod状态管理-在调用请求时更新用户界面

为什么我的PIN字段在第一次打字时不显示数字?

CLI数据库连接后将SHA-1密钥添加到Firebase项目

Flutter /dart 列表.第一个子类列表中的Where()错误

在Flutter 中更改扩展瓷砖的高度

如何从文本比例因子迁移到文本比例因子

在创建显示此错误的Flutter 深度链接时

如何使listview.builder在筛选列表后实时更新

Flutter Dismissible 不会在 startToEnd 滑动时被关闭

如何在android中 Select 任何文件/文件路径 - Flutter

如何将此文本按钮剪辑在堆栈中的圆形头像上方?

Listview 如何转到下一行/新行?

我无法从 Cloud firestore 访问文档字段并在 statefulwidget 类中显示它

我正在try 使用 Firebase 在 Flutter 中使用 Google 注销,但它不起作用

Flutter 中的 Firebase 后台消息处理程序产生重复的隔离并运行应用程序两次

Flutter Firestore 数据库排序最近 24 小时内最喜欢的文档