Flutter扩展面板默认有图标
我想从扩展面板中删除图标
我该怎么做?这是我的代码
ExpansionPanelList(
expansionCallback: (int index, bool isExpanded) {},
children: [
ExpansionPanel(
headerBuilder: (BuildContext context, bool isExpanded) {
return Stack(children: [
ListTile(//and the rest of code...
6条答案
按热度按时间yfjy0ee71#
唯一的方法是编辑ExpansionPanel源代码。
我添加了一个名为hasIcon的新属性,并将其默认设置为true(以确保它不会破坏代码)。
下面是如何编辑源代码:
按住CTRL键并单击ExpansionPanel小部件,然后搜索
并在其下方添加
然后搜索
并在其下方添加
最后,搜索
并替换它
ecr0jaav2#
这是可行的
只需将SizedBox.shrink()添加到ExpansionTile的尾部属性
vu8f3i0k3#
您可以将this file添加到您的代码中,并使用它来代替ExpansionPanelList。或者您可以直接在flutter版本上编辑ExpansionPanelList的源代码(不推荐)
fsi0uk1n4#
所以,我意识到这是一个老问题,但我花了一段时间寻找一个好的答案。自从版本4. 0引入主题到可扩展的小部件,你可以使用
hasIcon
删除标题图标。查看https://pub.dev/documentation/expandable/latest/
ckocjqey5#
如果您在面板中使用
ExpantionTile
,您可以提供trailing
小部件来替换箭头。目前正在努力将此功能添加到
ExpansionPanel
,但目前还不支持。您可以扩展此功能并自定义或其他提供此功能的库。(@bensal提到的那个)x33g5p2x6#
我有一个类似的问题与ExpandablePanel,我创建了一个ExpandableThemeData并设置hasIcon属性为false。