Flutter中如何移除DropdownSearch组件的后缀图标
移除DropdownSearch组件后缀下拉图标方案
你之前尝试的设置图标尺寸、Visibility隐藏、自定义dropdownBuilder不生效,是因为没有清空组件预留的后缀图标占位和点击区域约束,下面两种方案任选即可:
方案1:配置下拉按钮属性(优先尝试)
替换原有dropdownButtonProps配置为如下代码,彻底隐藏按钮本体同时清空占位:dropdownButtonProps: const DropdownButtonProps( isVisible: false, icon: SizedBox.shrink(), iconSize: 0, padding: EdgeInsets.zero, constraints: BoxConstraints.tightFor(width: 0, height: 0), ),方案2:从输入框装饰器层面清空后缀(方案1不生效时使用)
部分插件版本会在输入框装饰器层强制渲染后缀图标,此时修改dropdownDecoratorProps下的装饰器配置,清空后缀相关属性:dropdownDecoratorProps: DropDownDecoratorProps( textAlign: TextAlign.left, textAlignVertical: TextAlignVertical.center, // 在你原有主题装饰器基础上追加copyWith配置 dropdownSearchDecoration: _appTheme.dropDownDecoration().copyWith( suffixIcon: const SizedBox.shrink(), suffixIconConstraints: const BoxConstraints.tightFor(width: 0, height: 0), ), ),
配置完成后原图标位置如果仍可点击唤起下拉属于正常现象,DropdownSearch默认整个输入框区域都响应点击弹出事件,不影响正常交互。
内容的提问来源于stack exchange,提问作者CHP
相关产品推荐
相关产品推荐

