我怎么能改变一个DropdownButton的高度在Flutter。我试过使用Padding和SizedBox,但没有一个是真正的工作。
SizedBox只是增加了容器的大小,而DropdownButton被限制在左上角,因此不再居中。填充被忽略或将内容移动到按钮之外。
我不想改变的大小覆盖,但按钮本身。
build(BuildContext context) {
return ThemeData(
data: ThemeData(canvasColor: Colors.white),
child: DropdownButton(
items: _items.map((item) => DropdownMenuItem(child: Text(item), value: item)).toList(),
isExpanded: true,
selectedItemBuilder: (_) {
return _items.map<Widget>((String lang) {
return Center(
widthFactor: 1,
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 12),
child: Text(lang, style: TextStyle(color: Colors.black))
),
);
}).toList();
}
)
)
}
字符串
8条答案
按热度按时间fivyi3re1#
用
Container
包起来,根据需要给予高度和宽度,并在DropDownButton
中设置isExpanded
为true。还可以根据需要更改下拉按钮文本的字体大小。字符串
最终产品应该是这样的,
的数据
yzuktlbb2#
看起来DropdownButton类的'itemHeight'属性应该可以做到这一点。我尝试了它,它增加了我的DropdownButton的高度。
下面是我在以前的项目中使用itemHeight的一些示例代码:
字符串
注意:只要确保您提供的值不小于48.0,因为它会给予一个错误。
属性:https://api.flutter.dev/flutter/material/DropdownButton/itemHeight.html
由“kMinInteractiveHeight”定义的最小itemHeight:https://api.flutter.dev/flutter/material/kMinInteractiveDimension-constant.html
pes8fvy93#
字符串
您只需要将itemHeight保留为 null 值。
它将使下拉按钮的高度与菜单项的固有高度相同。
qyuhtwio4#
使用SizedBox控件
字符串
z9gpfhce5#
您需要使用下拉按钮控件的menuMaxHeight属性。
字符串
)
ymzxtsji6#
最简单的方法是使用基于DropDownButton构建的
DropDownButton2
只需更改
buttonHeight
属性不仅仅是
buttonHeight
,你甚至可以改变itemHeight
,buttonwidth
和更多的自定义字符串
checkout:DropDownButton2查看更多示例。
希望有帮助!
sg2wtvxw7#
将此属性menuMaxHeight:200添加到DropdownButton
bjg7j2ky8#
我使用InputDecorationTheme来满足需求。
字符串