簡體   English   中英

Flutter/Dart:如何向 TextFormField 等單選按鈕添加驗證?

[英]Flutter/Dart :How to add validation to radio button like TextFormField?

如何在 Flutter 中為 Radio Button 添加驗證? 我知道有一個名為flutter_form_builder的包,但我不想使用它。 有沒有辦法向單選按鈕添加驗證? 我希望它使用 formkey 對其進行驗證,但我無法發布代碼,因為整個表單是動態的,而且我無權在線發布代碼,因此不勝感激。 我可以制作自定義單選按鈕嗎?

我知道有點晚了。 只需使用 FormBuilder, 例如

或者如果你在 Form() 中使用它,這是一個例子:

FormField(
                builder: (FormFieldState<bool> state) {
                  return Padding(
                      padding: EdgeInsets.all(10),
                      child: Column(
                        crossAxisAlignment: CrossAxisAlignment.start,
                        children: [
                          Text('Where is occurrence happened?'),
                          state.hasError
                              ? Text(
                                  state.errorText,
                                  style: TextStyle(color: Colors.red),
                                )
                              : Container(),
                          RadioListTile(
                            ...
                            onChanged: (SomeValueType value) {
                              ...                              
                              state.setValue(true);
                            },
                          ),
                          RadioListTile(
                            ...
                          ),
                        ],
                      ));
                },
                validator: (value) {
                  if (value != true) {
                    return 'Please choose location';
                  }
                  return null;
                },
              )

在該代碼中,驗證器將在您調用 FormState.validate() 時運行,然后顯示 ErrorText。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM