import 'package:flutter/material.dart'; class TaskBox extends StatefulWidget { const TaskBox({Key? key}) : super(key: key); @override State<TaskBox> createState() => _TaskBoxState(); } class _TaskBoxState extends State<TaskBox> { bool _isEditingText = false; late TextEditingController _editingController; String initialText = "Initial Text"; @override void initState() { super.initState(); _editingController = TextEditingController(text: initialText); } @override Widget build(BuildContext context) { return Scaffold( body: Center( child: _editTitleTextField(), ), ); } _editTitleTextField() { if (_isEditingText) { return Center( child: TextField( onSubmitted: (newValue) { setState(() { initialText = newValue; _isEditingText = false; }); }, autofocus: true, controller: _editingController, ), ); } return InkWell( onTap: () { setState(() { _isEditingText = true; }); }, child: Text( initialText, style: const TextStyle( color: Colors.black, fontSize: 18.0, ), ), ); } }
Flutter 可编辑文本输入
15 min read