import 'package:flutter/material.dart'; import 'package:go_router/go_router.dart'; import 'package:plan/theme/decorations/app_shadows.dart'; import '../../../router/config/route_paths.dart'; class PlanFormCard extends StatefulWidget { const PlanFormCard({super.key}); @override State createState() => _PlanFormCardState(); } class _PlanFormCardState extends State { final TextEditingController _inputController = TextEditingController(); void _handSubmit() { if (_inputController.text.isEmpty) { return; } context.push( RoutePaths.planDetail(), extra: { "name": _inputController.text, }, ); _inputController.clear(); } @override Widget build(BuildContext context) { return Stack( alignment: Alignment.topCenter, children: [ Positioned( top: 56, child: SizedBox( height: 100, child: Image.asset("assets/image/xiaozhi.png"), ), ), Container( width: double.infinity, padding: const EdgeInsets.symmetric(vertical: 20, horizontal: 40), margin: EdgeInsets.only(top: 120), decoration: shadowDecoration, child: Column( children: [ Container( margin: EdgeInsets.only(bottom: 20), child: Text("有什么事情你一直在拖延?"), ), TextField( controller: _inputController, style: Theme.of(context).textTheme.bodyMedium, maxLength: 40, decoration: InputDecoration( hintText: "我躺在床上听歌", fillColor: Theme.of(context).colorScheme.surfaceContainerLow, filled: true, enabledBorder: OutlineInputBorder( borderSide: BorderSide( width: 1, color: Theme.of(context).colorScheme.surfaceContainerHigh, ), borderRadius: BorderRadius.circular(5), ), border: OutlineInputBorder( borderSide: BorderSide( width: 1, ), borderRadius: BorderRadius.circular(5), ), ), ), InkWell( onTap: _handSubmit, child: Container( margin: EdgeInsets.only(top: 20), padding: EdgeInsets.symmetric(vertical: 8, horizontal: 20), decoration: BoxDecoration( borderRadius: BorderRadius.circular(5), border: Border.all(color: Colors.black, width: 1.5), ), child: Text( "创建计划", style: TextStyle( fontSize: 14, fontWeight: FontWeight.w700, color: Theme.of(context).colorScheme.onSurfaceVariant, ), ), ), ), ], ), ), ], ); } }