正在开发一个词汇学习应用程序(从英语到法语,反之亦然)。 在做测验时,如果用户在建议栏上没有建议(因为它有助于拼写),我会更喜欢它。 我尝试禁用文本字段中的选项,但没有任何效果。 这是代码:
Container(
padding: const EdgeInsets.all(8),
child: TextFormField(
smartQuotesType: SmartQuotesType.disabled,
autofocus: true,
enableSuggestions: false,
autocorrect: false,
controller: fieldText,
keyboardType:
TextInputType.visiblePassword,
enabled: pasfini,
enableInteractiveSelection: false,
autovalidateMode:
AutovalidateMode.disabled,
decoration: InputDecoration(
border: OutlineInputBorder(
borderRadius:
BorderRadius.circular(10.0),
),
labelText: 'Ecris la traduction'),
onChanged: (value) {
word = value;
},
onTap: () {
setState(() {
exoEnCours = true;
});
},
),
),
似乎唯一可行的是,如果我将 keyboardType 设置为电子邮件地址......但在那种情况下,空格键变得非常小并且出现@符号......
我不明白为什么 enableSuggestions : false 和 autocorrect : false 不起作用。 API 文档中指定,对于 IOS:AUTOCORRECT 应设置为 false 以禁用此功能。
你知道有没有 flutter bug 吗?
我尝试在 ANDROID 设备上调试相同的代码,并且运行良好。 IOS好像有问题....
我对 TEXTFIELD 小部件的另一个选项有同样的问题:与 CAPITALIZATION 链接的选项。
TextFormField(
style: TextStyle(
fontSize: uD.device == Device.smallMobile
? uD.smallFont2
: uD.mediumFont2),
initialValue: name,
keyboardType: TextInputType.name,
textCapitalization: TextCapitalization.words,
autocorrect: false,
enableSuggestions: false,
decoration: kTextFormFieldDecoration.copyWith(
labelText: 'Nom du responsable légal',
),
它从不将字段文本的首字母大写。它在 Android 上运行良好。
我遇到了与您相同的问题,解决方案是使用 Cupertino 文本字段类型。您可以通过首先将其导入包来实现它 导入'package:flutter/cupertino.dart';
然后你使用 TextInputType.name 而不是 TextInputType.emailAddress 这将完美地禁用自动建议。将其与禁用以下建议的其他因素属性一起包括在内:
自动更正:错误, enableSuggestions: false, enableIMEPersonalizedLearning: false, TextInputType.name,