diff --git a/lib/guess/guess_app_bar.dart b/lib/guess/guess_app_bar.dart index 8fcb0e8..9c45c12 100644 --- a/lib/guess/guess_app_bar.dart +++ b/lib/guess/guess_app_bar.dart @@ -1,8 +1,15 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; -class GuessAppBar extends StatelessWidget implements PreferredSizeWidget{ - const GuessAppBar({Key? key}) : super(key: key); +class GuessAppBar extends StatelessWidget implements PreferredSizeWidget { + final VoidCallback onCheck; + final TextEditingController controller; + + const GuessAppBar({ + Key? key, + required this.onCheck, + required this.controller, + }) : super(key: key); @override Widget build(BuildContext context) { @@ -10,7 +17,6 @@ class GuessAppBar extends StatelessWidget implements PreferredSizeWidget{ systemOverlayStyle: const SystemUiOverlayStyle( statusBarIconBrightness: Brightness.dark, statusBarColor: Colors.transparent), - // leadingWidth: 54, titleSpacing: 0, leading: Icon( Icons.menu, @@ -19,7 +25,7 @@ class GuessAppBar extends StatelessWidget implements PreferredSizeWidget{ actions: [ IconButton( splashRadius: 20, - onPressed: () {}, + onPressed: onCheck, icon: Icon( Icons.run_circle_outlined, color: Colors.blue, @@ -28,6 +34,7 @@ class GuessAppBar extends StatelessWidget implements PreferredSizeWidget{ backgroundColor: Colors.white, elevation: 0, title: TextField( + controller: controller, keyboardType: TextInputType.number, decoration: InputDecoration( filled: true, diff --git a/lib/guess/guess_page.dart b/lib/guess/guess_page.dart index cfbf9c1..7acb2fa 100644 --- a/lib/guess/guess_page.dart +++ b/lib/guess/guess_page.dart @@ -20,6 +20,13 @@ class _GuessPageState extends State { Random _random = Random(); bool _guessing = false; + + @override + void dispose() { + _guessCtrl.dispose(); + super.dispose(); + } + void _generateRandomValue() { setState(() { _guessing = true; @@ -28,10 +35,19 @@ class _GuessPageState extends State { }); } + TextEditingController _guessCtrl = TextEditingController(); + + void _onCheck(){ + print("=====Check:目标数值:$_value=====${_guessCtrl.text}============"); + } + @override Widget build(BuildContext context) { return Scaffold( - appBar: GuessAppBar(), + appBar: GuessAppBar( + controller: _guessCtrl, + onCheck: _onCheck, + ), body: Stack( children: [ // Column(