这是我的代码
Spacer(), // 1/6
InkWell(
onTap: () => Get.to(QuizScreen()),
child: Container(
width: double.infinity,
alignment: Alignment.center,
padding: EdgeInsets.all(kDefaultPadding * 0.75), // 15
decoration: BoxDecoration(
gradient: kPrimaryGradient,
borderRadius: BorderRadius.all(Radius.circular(12)),
),
child: Text(
"Lets Start Quiz",
style: Theme.of(context)
.textTheme
.button
.copyWith(color: Colors.black),
),
),
),
Spacer(flex: 2), // it will take 2/6 spaces
],
),
),
),
],
),
);
}}
请某人帮我查一下这个r=错误的原因。我点击按钮时出错了。这个项目建设得很好,但当我点击按钮时,我没有得到反馈
错误:引发了另一个异常:您正试图在没有的情况下使用无上下文导航。
您需要在GetX的Main.dart文件中添加GetMaterialApp
。
谢谢。这是演示:
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:getxpro/view/cartPage.dart';
import 'package:getxpro/view/home.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return GetMaterialApp( //for navigation dont forget to use GetMaterialApp
title: 'getXpro',
theme: ThemeData(
primarySwatch: Colors.blue,
),
initialRoute: '/',
routes: {
'/': (context) => HomePage(),
'/cart': (context) => CartPage(),
},
);
}
}
首先用想要点击的小部件包装小部件,并将其转换为手势检测器
只需在main.dart 中执行GetMaterialApp
GestureDetector(
onTap():{
Get.to(()=>PageName_tobecalled());
}