[英]flutter button can't navigate
im new to flutter. and i have an error in my app.我是 flutter 的新用户。我的应用程序出现错误。 so after i added a button navigator in my "HomePage" when i press one of the button to navigate to "ReminderHomePage" it works, but when i try to press another button to navigate to "AddReminderPage" this error occur所以在我的“主页”中添加了一个按钮导航器后,当我按下其中一个按钮导航到“ReminderHomePage”时,它起作用了,但是当我尝试按下另一个按钮导航到“AddReminderPage”时,会发生此错误
══╡ EXCEPTION CAUGHT BY FLUTTER FRAMEWORK ╞═════════════════════════════════════════════════════════
The following message was thrown:
Could not navigate to initial route.
The requested route name was: "/AddReminderPage"
There was no corresponding route in the app, and therefore the initial route specified will be
ignored and "/" will be used instead.
════════════════════════════════════════════════════════════════════════════════════════════════════
Error: Assertion failed:
file:///D:/Software/Flutter/flutter/packages/flutter/lib/src/painting/text_painter.dart:975:12
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart
266:49 throw_
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart
29:3 assertFailed
packages/flutter/src/painting/text_painter.dart 975:13
getPositionForOffset
packages/flutter/src/rendering/paragraph.dart 581:52
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 183:63
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 183:63
hitTest
packages/flutter/src/rendering/box.dart 2879:23
<fn>
packages/flutter/src/rendering/box.dart 805:31
addWithPaintOffset
packages/flutter/src/rendering/box.dart 2874:32
defaultHitTestChildren
packages/flutter/src/rendering/flex.dart 1082:12
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/shifted_box.dart 97:18
<fn>
packages/flutter/src/rendering/box.dart 805:31
addWithPaintOffset
packages/flutter/src/rendering/shifted_box.dart 92:20
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/box.dart 2879:23
<fn>
packages/flutter/src/rendering/box.dart 805:31
addWithPaintOffset
packages/flutter/src/rendering/box.dart 2874:32
defaultHitTestChildren
packages/flutter/src/rendering/flex.dart 1082:12
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/box.dart 2879:23
<fn>
packages/flutter/src/rendering/box.dart 805:31
addWithPaintOffset
packages/flutter/src/rendering/box.dart 2874:32
defaultHitTestChildren
packages/flutter/src/rendering/custom_layout.dart 420:12
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 2030:18
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 3618:31
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 2590:22
<fn>
packages/flutter/src/rendering/box.dart 844:31
addWithRawTransform
packages/flutter/src/rendering/box.dart 769:12
addWithPaintTransform
packages/flutter/src/rendering/proxy_box.dart 2586:18
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 2580:12
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 2590:22
<fn>
packages/flutter/src/rendering/box.dart 844:31
addWithRawTransform
packages/flutter/src/rendering/box.dart 769:12
addWithPaintTransform
packages/flutter/src/rendering/proxy_box.dart 2586:18
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 2580:12
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 183:63
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 2590:22
<fn>
packages/flutter/src/rendering/box.dart 844:31
addWithRawTransform
packages/flutter/src/rendering/box.dart 769:12
addWithPaintTransform
packages/flutter/src/rendering/proxy_box.dart 2586:18
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 2580:12
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 2590:22
<fn>
packages/flutter/src/rendering/box.dart 844:31
addWithRawTransform
packages/flutter/src/rendering/box.dart 769:12
addWithPaintTransform
packages/flutter/src/rendering/proxy_box.dart 2586:18
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 2580:12
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 183:63
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/widgets/routes.dart 2217:63
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 3743:31
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/widgets/overlay.dart 826:23
<fn>
packages/flutter/src/rendering/box.dart 805:31
addWithPaintOffset
packages/flutter/src/widgets/overlay.dart 821:32
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 3854:17
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/proxy_box.dart 183:63
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/proxy_box.dart 135:19
hitTestChildren
packages/flutter/src/rendering/box.dart 2511:11
hitTest
packages/flutter/src/rendering/view.dart 186:7
hitTest
packages/flutter/src/rendering/binding.dart 547:16
hitTest
packages/flutter/src/gestures/binding.dart 365:7
[_handlePointerEventImmediately]
packages/flutter/src/gestures/binding.dart 357:5
handlePointerEvent
packages/flutter/src/gestures/binding.dart 314:7
[_flushPointerEventQueue]
packages/flutter/src/gestures/binding.dart 295:7
[_handlePointerDataPacket]
C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/platform_dispatcher.dart 1183:13
invoke1
C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/platform_dispatcher.dart 244:5
invokeOnPointerDataPacket
C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/pointer_binding.dart 147:39
[_onPointerData]
C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/pointer_binding.dart 631:16
<fn>
C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/pointer_binding.dart 594:14
<fn>
C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/pointer_binding.dart 288:16
loggedHandler
C:/b/s/w/ir/cache/builder/src/out/host_debug/flutter_web_sdk/lib/_engine/engine/pointer_binding.dart 179:80
<fn>
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 334:14 _checkAndCall
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 339:39 dcall
when i run the app with chrome, the page link looks like it change to /AddReminderPage.当我使用 chrome 运行该应用程序时,页面链接看起来像是更改为 /AddReminderPage。 but nothing in the app seems to navigate.但应用程序中似乎没有任何内容可以导航。 any help would mean so much to me.任何帮助对我来说意义重大。
here is my bottomnavigation code这是我的底部导航代码
import 'package:flutter/material.dart';
import 'package:medreminder/home_page.dart';
import 'package:medreminder/profile_page.dart';
import 'package:medreminder/settings_page.dart';
import 'package:medreminder/Reminder/ui/home_reminder.dart';
import 'package:medreminder/Reminder/ui/widgets/add_remindbar.dart';
import 'package:medreminder/Reminder/ui/widgets/add_remindbar.dart';
void main() => runApp(MyApp());
/// This Widget is the main application widget.
class MyApp extends StatelessWidget {
static const String _title = 'Flutter Code Sample';
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
title: _title,
home: BotNav(),
);
}
}
class BotNav extends StatefulWidget {
BotNav();
@override
_BotNavState createState() => _BotNavState();
}
class _BotNavState extends State<BotNav> {
int _selectedIndex = 0;
static const List<Widget> navigationItems = <Widget>[
HomePage(),
SettingPage(),
ProfilePage(),
];
void _onItemTapped(int index) {
setState(() {
_selectedIndex = index;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: navigationItems.elementAt(_selectedIndex),
),
bottomNavigationBar: BottomNavigationBar(
items: const <BottomNavigationBarItem>[
BottomNavigationBarItem(
icon: Icon(Icons.home),
label: 'Home',
),
BottomNavigationBarItem(
icon: Icon(Icons.settings),
label: 'Settings',
),
BottomNavigationBarItem(
icon: Icon(Icons.people),
label: 'Profile',
),
],
currentIndex: _selectedIndex,
selectedItemColor: Colors.blue,
onTap: _onItemTapped,
),
);
}
}
my "HomePage" code我的“主页”代码
import 'package:flutter/material.dart';
import 'package:get/get_core/src/get_main.dart';
import 'package:get/get_navigation/get_navigation.dart';
import 'Reminder/ui/home_reminder.dart';
import 'Reminder/ui/widgets/button.dart';
void main() {
// debugPaintSizeEnabled = true;
runApp(const HomePage());
}
class HomePage extends StatelessWidget {
const HomePage({super.key});
@override
Widget build(BuildContext context) {
return GetMaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
appBar: AppBar(
title: const Text('Medicine Reminder App'),
),
body: Column(
children: [
Stack(
children: [
Image.asset(
'images/MenuImg.jpg',
width: 600,
height: 200,
fit: BoxFit.cover,
),
],
),
const SizedBox(height: 10.0),
Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [
ElevatedButton(
child: const Text('Button 1'),
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => const ReminderHomePage()),
);
},
),
ElevatedButton(
child: const Text('Button 2'),
onPressed: () {},
),
ElevatedButton(
child: const Text('Button 3'),
onPressed: () {},
),
],
),
],
),
),
);
}
}
my "ReminderHomePage" code我的“ReminderHomePage”代码
import 'package:date_picker_timeline/date_picker_timeline.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:google_fonts/google_fonts.dart';
import 'package:medreminder/Reminder/services/notification_services.dart';
import 'package:medreminder/Reminder/services/theme_services.dart';
import 'package:intl/intl.dart';
import 'package:medreminder/Reminder/ui/theme.dart';
import 'package:medreminder/Reminder/ui/widgets/add_remindbar.dart';
import 'package:medreminder/Reminder/ui/widgets/button.dart';
import 'package:medreminder/Reminder/ui/widgets/add_remindbar.dart';
import 'package:medreminder/home_page.dart';
class ReminderHomePage extends StatefulWidget {
const ReminderHomePage({super.key});
@override
State<ReminderHomePage> createState() => _ReminderHomePageState();
}
class _ReminderHomePageState extends State<ReminderHomePage> {
DateTime _selectedDate = DateTime.now();
var notifyHelper;
@override
void initState() {
// TODO: implement initState
super.initState();
notifyHelper=NotifyHelper();
notifyHelper.initializeNotification();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: _appBar(),
backgroundColor: context.theme.backgroundColor,
body: Column(
children: [
_addTaskBar(),
_addDateBar(),
],
),
);
}
_addDateBar(){
return Container(
margin: const EdgeInsets.only(top: 20, left: 20),
child: DatePicker(
DateTime.now(),
height: 100,
width: 80,
initialSelectedDate: DateTime.now(),
selectionColor: Color(0xFFAAB6FB),
selectedTextColor: Colors.white,
dateTextStyle: GoogleFonts.lato(
textStyle: TextStyle(
fontSize: 20,
fontWeight: FontWeight.w600,
color:Colors.grey
),
),
dayTextStyle: GoogleFonts.lato(
textStyle: TextStyle(
fontSize: 16,
fontWeight: FontWeight.w600,
color:Colors.grey
),
),
monthTextStyle: GoogleFonts.lato(
textStyle: TextStyle(
fontSize: 14,
fontWeight: FontWeight.w600,
color:Colors.grey
),
),
onDateChange: (date){
_selectedDate=date;
},
),
);
}
_addTaskBar(){
return Container(
margin: const EdgeInsets.only(left: 20, right: 20, top: 5),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Container(
margin: const EdgeInsets.symmetric(horizontal: 20),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(DateFormat.yMMMMd().format(DateTime.now()),
style: subHeadingStyle,
),
Text("Today",
style: headingStyle,
)
],
),
),
MyButton(label: "Add Reminder", onTap: ()=>Get.to(AddReminderPage()))
],
),
);
}
_appBar(){
return AppBar(
elevation: 0,
backgroundColor: context.theme.backgroundColor,
leading: GestureDetector(
onTap: (){
ThemeService().switchTheme();
notifyHelper.displayNotification(
title:"Theme Changed!",
body: Get.isDarkMode?"Activated Light Theme!":"Activated Dark Theme!"
);
notifyHelper.scheduledNotification();
},
child: Icon(Get.isDarkMode ?Icons.wb_sunny_outlined:Icons.nightlight_round,
size: 20,
color:Get.isDarkMode ? Colors.white:Colors.black
),
),
actions: [
CircleAvatar(
backgroundImage: AssetImage(
"images/profile.png"
),
),
// Icon(Icons.person,
// size: 20,),
SizedBox(width: 20,),
],
);
}
}
my "AddReminderPage" code我的“AddReminderPage”代码
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:intl/intl.dart';
import 'package:medreminder/Reminder/ui/theme.dart';
import 'package:medreminder/Reminder/ui/widgets/button.dart';
import 'package:medreminder/Reminder/ui/widgets/input_field.dart';
class AddReminderPage extends StatefulWidget {
const AddReminderPage({super.key});
@override
State<AddReminderPage> createState() => _AddReminderPageState();
}
class _AddReminderPageState extends State<AddReminderPage> {
final TextEditingController _titleController = TextEditingController();
final TextEditingController _doseController = TextEditingController();
DateTime _selectedDate = DateTime.now();
String _endTime="09:15 PM";
String _startTime = DateFormat("hh:mm a").format(DateTime.now()).toString();
String _selectedRepeat = "None";
List<String> repeatList=[
"None",
"Daily",
];
int _selectedColor=0;
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: context.theme.backgroundColor,
appBar: _appBar(context),
body: Container(
padding: const EdgeInsets.only(left: 20, right: 20),
child: SingleChildScrollView(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"Add Reminder",
style: headingStyle,
),
MyInputField(title: "Med Name", hint: "Enter Med Name Here..", controller: _titleController,),
MyInputField(title: "Dose", hint: "Enter Dose Here..", controller: _doseController,),
MyInputField(title: "Date", hint: DateFormat('dd/MM/yyyy').format(_selectedDate),
widget: IconButton(
icon: Icon(Icons.calendar_today_outlined, color: Colors.grey[700]),
onPressed: () {
_getDate();
},),
),
Row(
children: [
Expanded(
child: MyInputField(
title: "Start",
hint: _startTime,
widget: IconButton(
onPressed: (){
_getTime(isStartTime: true);
},
icon: Icon(
Icons.access_time_rounded,
color: Colors.grey[700],
),
),
),
),
SizedBox(width: 20,),
Expanded(
child: MyInputField(
title: "End",
hint: _endTime,
widget: IconButton(
onPressed: (){
_getTime(isStartTime: false);
},
icon: Icon(
Icons.access_time_rounded,
color: Colors.grey[700],
),
),
),
)
],
),
MyInputField(title: "Repeat", hint: "$_selectedRepeat",
widget: DropdownButton(
// onChanged: (value){
// },
icon: Icon(Icons.keyboard_arrow_down,
color: Colors.grey[600],
),
iconSize: 30,
elevation: 4,
style: subTitleStyle,
underline: Container(height: 0,),
onChanged: (String? newValue){
setState(() {
_selectedRepeat = newValue!;
});
},
items: repeatList.map<DropdownMenuItem<String>>((String? value){
return DropdownMenuItem<String>(
value: value,
child: Text(value!, style:TextStyle(color: Colors.grey))
);
}
).toList()
),
),
SizedBox(height: 14,),
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
_colorPalette(),
MyButton(label: "Create Reminder", onTap: ()=>_validateDate())
],
)
],
),
),
)
);
}
_validateDate(){
if(_titleController.text.isNotEmpty&&_doseController.text.isNotEmpty){
//database
Get.back();
}else if(_titleController.text.isEmpty ||_doseController.text.isEmpty){
Get.snackbar("Required", "All fields must be filled!",
snackPosition: SnackPosition.TOP,
backgroundColor: Colors.red,
icon: Icon(Icons.warning_amber_rounded,
color:Colors.red
)
);
}
}
_colorPalette(){
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text("Color",
style: titleStyle,
),
SizedBox(height: 6.0,),
Wrap(
children: List<Widget>.generate(
3,
(int index) {
return GestureDetector(
onTap: (){
setState(() {
_selectedColor=index;
});
},
child: Padding(
padding: const EdgeInsets.only(right: 6.0),
child: CircleAvatar(
radius: 12,
backgroundColor: index==0?greenColor:index==1?bluishClr:yellowColor,
child: _selectedColor==index? Icon(Icons.done,
color:Colors.white,
size: 14):Container(),
),
),
);
}
),
)
],
);
}
_appBar(BuildContext context){
return AppBar(
elevation: 0,
backgroundColor: context.theme.backgroundColor,
leading: GestureDetector(
onTap: (){
Get.back();
},
child: Icon(Icons.arrow_back,
size: 20,
color:Get.isDarkMode ? Colors.white:Colors.black
),
),
actions: [
CircleAvatar(
backgroundImage: AssetImage(
"images/profile.png"
),
),
// Icon(Icons.person,
// size: 20,),
SizedBox(width: 20,),
],
);
}
_getDate() async {
DateTime? _pickerDate = await showDatePicker(
context: context,
initialDate: DateTime.now(),
firstDate: DateTime(2020),
lastDate: DateTime(2122)
);
if(_pickerDate!=null){
setState(() {
_selectedDate = _pickerDate;
});
}
else{
print("Cant be empty, Try Again!");
}
}
_getTime({required bool isStartTime}) async {
var pickedTime = await _showTImePicker();
String _formatedTime = pickedTime.format(context);
if(pickedTime==null){
print("Time cancel");
}
else if(isStartTime==true){
setState(() {
_startTime=_formatedTime;
});
}
else if(isStartTime==false){
setState(() {
_endTime=_formatedTime;
});
}
}
_showTImePicker(){
return showTimePicker(
initialEntryMode: TimePickerEntryMode.input,
context: context,
initialTime: TimeOfDay(
hour: int.parse(_startTime.split(":")[0]),
minute: int.parse(_startTime.split(":")[1].split(" ")[0]))
);
}
}
and here is my main.dart这是我的 main.dart
import 'package:flutter/material.dart';
import 'package:get/get_navigation/src/root/get_material_app.dart';
import 'package:get_storage/get_storage.dart';
import 'package:medreminder/Reminder/services/theme_services.dart';
import 'package:medreminder/Reminder/ui/home_reminder.dart';
import 'package:medreminder/Reminder/ui/theme.dart';
import 'package:medreminder/home_page.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await GetStorage.init();
//runApp(MyApp());
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return GetMaterialApp(
title: 'Flutter Demo',
debugShowCheckedModeBanner: false,
theme: Themes.light,
darkTheme: Themes.dark,
themeMode: ThemeService().theme,
home: const HomePage(),
);
}
}
another thing is that if i run the app from "HomePage" without my bottomnavigator it works perfectly.另一件事是,如果我在没有 bottomnavigator 的情况下从“主页”运行应用程序,它会完美运行。 thankyou.谢谢你。
In ReminderHomePage
, rather than doing:在ReminderHomePage
中,而不是做:
MyButton(label: "Add Reminder", onTap: ()=>Get.to(AddReminderPage()))
try:尝试:
MyButton(
label: "Add Reminder",
onTap: () =>
Navigator.push(
context,
MaterialPageRoute(builder: (context) => const AddReminderPage()),
))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.