问题描述
TextField(
inputFormatters: [FilteringTextInputFormatter.digitsOnly],controller: _amountController,autofocus: true,keyboardType: TextInputType.number,decoration: Inputdecoration(
hintText: '0',hintStyle: TextStyle(color: Painter.gray500),border: InputBorder.none,prefixIcon: Padding(
padding: const EdgeInsets.only(right: 8.0),child: SvgPicture.asset(icon),),prefixIconConstraints: BoxConstraints(
maxHeight: 20,maxWidth: 20,
这是在我用来添加数据的底部工作表中。我还想启用编辑,因此点击底部工作表加载具有现有值的 TextField(如果有)。为此,_amountController
被初始化为:
AddDataSheet({
required this.title,required this.subtitle,this.amount,}) {
_amountController = TextEditingController.fromValue(
amount == null
? TextEditingValue.empty
: TextEditingValue(
text: amount.toString()
),);
}
问题是,当 TextField 加载时,它带有焦点,但在我点击它之前我无法编辑它。我试着添加这个,
selection: TextSelection.fromPosition(
TextPosition(offset: amount.toString().length),
到控制器初始化但它不起作用。
如何拥有 TextField 以便我不必点击它即可开始编辑值?