Flutter search_choices包是否含border字段?如何为SearchChoices.single加边框
解决方案
1. 直接通过decoration参数添加边框
SearchChoices.single本身提供了decoration参数,支持传入InputDecoration类型的值,你可以通过这个参数直接配置边框样式,不需要额外用Container包裹。修改后的代码示例如下:
SearchChoices.single( items: tyreserialno.map((category) => DropdownMenuItem( value: category, child: Text(category.name), )).toList(), value: _selectedtyrserialnoCategory, hint: "Select Tyre Serial No", searchHint: "Search for Tyre Serial No", onChanged: (value) { setState(() { _selectedtyrserialnoCategory = value; tyreserialnoid = value?.id; }); }, isExpanded: true, // 配置decoration实现边框 decoration: InputDecoration( border: OutlineInputBorder( borderSide: const BorderSide(color: Colors.grey, width: 1.0), borderRadius: BorderRadius.circular(4.0), ), enabledBorder: OutlineInputBorder( borderSide: const BorderSide(color: Colors.grey, width: 1.0), borderRadius: BorderRadius.circular(4.0), ), focusedBorder: OutlineInputBorder( borderSide: const BorderSide(color: Colors.blue, width: 2.0), borderRadius: BorderRadius.circular(4.0), ), ), )
你可以根据需求调整OutlineInputBorder的颜色、宽度、圆角,也可以替换成UnderlineInputBorder仅设置底部边框。
2. 关于search_choices包的border字段
这个组件没有直接暴露border字段,但通过decoration参数传入InputDecoration,可以借助Flutter标准的InputDecoration属性(如border、enabledBorder、focusedBorder)来实现边框的自定义,这是Flutter表单组件的通用配置方式。
内容的提问来源于stack exchange,提问作者Ahamed habeeb
相关产品推荐
相关产品推荐

