как вы делаете текстовое поле при первом открытии, даст ли оно значение тысячи (,)? - PullRequest
0 голосов
/ 12 января 2020

как вы делаете текстовое поле при первом открытии, даст ли оно значение тысячи (,)?

как мне сделать текстовое поле, когда оно будет открыто в первый раз, даст значение тысячи (,)?, этот TextField выдаст (,), когда я дам новый ввод.

Я был немного смущен контроллером: priceController, потому что контроллер не может быть преобразован в значение валюты

final priceController = TextEditingController();
    enabled: !_isOwned,
controller: priceController,
cursorColor: Theme.of(context).primaryColor,
keyboardType: TextInputType.number,
maxLength: 11,
inputFormatters: [
    NumericTextFormatter(),
],
decoration: InputDecoration(
    hintText: '0',
    prefixText: 'Rp ',
    counterText: '',
    errorText:
        !_validate ? 'Biaya harus diisi' : null,
),
onChanged: (value) {
    print("VALUE $value ${value.length}");
    if (value.length > 0) {
    setState(() {
        _validate = true;
    });
    } else {
    setState(() {
        _validate = false;
    });
    }
},
)

1 Ответ

0 голосов
/ 12 января 2020

Если вы хотите иметь значение по умолчанию для вашего TextFormField, вы можете сделать это двумя различными способами.

Вы можете установить initialValue в виджете:

TextFormField(
  initialValue: '1000',
),

Или вы можете определить его на TextEditingController:

TextEditingController priceController = TextEditingController(text: '1000');
...