import 'package:client/const/font.dart'; import 'package:client/modules/home/tool_card.dart'; import 'package:client/modules/to_qrcode/to_qrcode.dart'; import 'package:flutter/material.dart'; class Home extends StatefulWidget { const Home({super.key}); @override State createState() => _HomeState(); } class _HomeState extends State { final toolsList = [ToQrcode()]; @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( backgroundColor: Theme.of(context).scaffoldBackgroundColor, scrolledUnderElevation: 0, title: Text( "工具站", style: TextStyle( fontWeight: FontWeight.bold, fontSize: Font.FONT_SIZE_TITLE, ), ), centerTitle: true, actions: [ CircleAvatar(child: Text("登陆", style: TextStyle(fontSize: 12))), SizedBox(width: 16), ], ), body: GridView.builder( padding: EdgeInsets.symmetric(horizontal: 16), gridDelegate: SliverGridDelegateWithMaxCrossAxisExtent( maxCrossAxisExtent: 300, childAspectRatio: 1.7, mainAxisSpacing: 8, crossAxisSpacing: 8, ), itemCount: toolsList.length, itemBuilder: (BuildContext context, int index) { return GestureDetector( onTap: () { enterCard(index); }, child: ToolCard(), ); }, ), ); } void enterCard(int index) { Navigator.push( context, MaterialPageRoute(builder: ((context) => toolsList[index])), ); } }