小编ome*_*_mi的帖子

Flutter禁用TextField不显示ErrorText

我正在使用颤动禁用的文本字段,它与警报一起使用,在单击时提供一些选择。

在我的例子中,我使用下面类似流的代码来验证该值:

final validateGender =
      StreamTransformer<String, String>.fromHandlers(handleData: (text, sink) {
    if (text.isEmpty ||
        text.toLowerCase() != 'male' ||
        text.toLowerCase() != 'female') {
      sink.addError('* Not choose yet');
    } else {
      sink.add(text);
    }
  });
Run Code Online (Sandbox Code Playgroud)

我创建了一个可以显示错误文本的文本字段:

StreamBuilder<String>(
  stream: stream,
  builder: (context, snapshot) {
    return TextField(
      enabled: enable,
      autofocus: isAutoFocus ?? false,
      onTap: onTap,
      controller: controller,
      onChanged: onChanged,
      keyboardType: TextInputType.text,
      decoration: InputDecoration(
      errorText: snapshot.error,
        border: OutlineInputBorder(
        borderRadius: BorderRadius.all(Radius.circular(10.0)),
        ),
      disabledBorder: OutlineInputBorder(
        borderRadius: BorderRadius.all(Radius.circular(10.0)),
        borderSide: BorderSide(color: Colors.gray, width: 1.0),
        ),
      errorBorder: OutlineInputBorder(
        borderRadius: BorderRadius.all(Radius.circular(10.0)),
        borderSide: BorderSide(color: …
Run Code Online (Sandbox Code Playgroud)

dart flutter

2
推荐指数
1
解决办法
1473
查看次数

标签 统计

dart ×1

flutter ×1