Отображение ошибки под TextField во флаттере - PullRequest
0 голосов
/ 02 мая 2020

Конструкция материала позволяет текстовому полю указывать на ошибку с помощью маленькой красной метки под полем ввода: https://material.io/components/text-fields (см. Скриншот ниже).

Есть ли способ добиться это для TextField поля во флаттере? Я ожидал, что это будет свойство TextField или TextEditingController, но ничего подобного не нашел.

Screenshot showing how a textfield with an error looks like

Ответы [ 2 ]

1 голос
/ 02 мая 2020

Вы показываете ошибки, основанные на результатах проверки, которые возвращаются функцией проверки, предоставленной TextFormField. Вы проверяете там некоторые условия и возвращаете сообщение об ошибке или ноль, основываясь на том, что вы хотите показать и когда, или если вы не не хочу ничего показывать.

child: new TextFormField(
  autocorrect: false,
  validator: (value) {
    if (value.isEmpty) {
      return 'Error Message';
    }
    return null;
  },
  onSaved: (val) => //do something...,
  decoration: new InputDecoration(labelText: "Label*"),
),
1 голос
/ 02 мая 2020

Он присутствует в свойстве художественного оформления в TextField, также вы можете стилизовать его, используя его свойство style.

     TextField(
        decoration: InputDecoration(
          errorStyle: TextStyle(),
          errorText: 'Please enter something'
        ),
      ),
...