首页 > 解决方案 > 如何通过下拉菜单隐藏表单的可见性

问题描述

从下拉列表中选择一个字段时如何禁用其他字段。我有一个 YES/NO 下拉值 NO 应该隐藏所有存在的表单的可见性

  Row(
                          children: [
                            Expanded(
                              child:DropDownWidget(
                                list: ["Yes","No"],
                                data: patientConsent,
                                hint: getTranslated(context, "select"),
                                heading: getTranslated(context, "patient_consent"),

                              ),
                            ),
                          ],
                        ),
                        
                         CustomFromField(
                          heading: getTranslated(context, "sample_id")

                        -----

标签: flutterdart

解决方案


这是根据您的要求的逻辑。

步 :

  1. setState()被调用以相应地更新 UI。
  2. 维护一个全局变量,该变量可在构建函数内部用于验证。

概述 :

//... create state codes
class _HomeState extends State<Home> {
  bool _value = false;
..
..
@override
  Widget build(BuildContext context) {
.. ..
DropdownButton(
..
onChanged: (bool value) {
                        setState(() {
                          _value = value;
                        });
                      })

 if (_value) Text('Shown when selected true in dropdown'),
}
}

工作片段可以在这里找到。如有任何疑问,请告诉我。


推荐阅读