Flutter:ExpansionPanelList.radio 回调返回错误值?

问题描述

我用注释(大写)标记的行没有按预期执行。

当我切换某个ExpansionPanelRadio()(例如语言english)时的控制台输出

选择语言 english 时的控制台输出,然后我单击另一个语言(例如 mandarin):

  1. Flutter: mandarin false (true吗??)
  2. Flutter: english false (

为什么他们都说false,而显然一个打开而另一个关闭?两个面板在更改之前和之后都处于不同的状态。

有了这些信息^^,我怎么知道ExpansionPanelRadio()刚刚被窃听了?

            List<String> languages = Languages.languagetoImagePath.keys.toList();

            return SingleChildScrollView(
              child: ExpansionPanelList.radio(
                initialOpenPanelValue: targetLanguage,//see value in ExpansionPanelRadio
                expansionCallback: (int panelIndex,bool isExpanded) {
                  print('${languages[panelIndex]} $isExpanded'); //<-- HEEEEEEERRREEEEE
                },children: languages.map<ExpansionPanel>((language) {
                  return ExpansionPanelRadio(
                    value: language,headerBuilder: (context,bool isExpanded) { //and what's this bool for?
                      return Text(language);
                    },body: Text('Choose writing system(s) todo...'),);
                }).toList(),),);

我认为这些可能是框架中的错误/错误,但我想在报告之前在 stackoverflow 上询问。
也许我只是不明白这些 Widget 应该如何使用。
任何帮助表示赞赏。

我最初认为 ExpansionPanelList.radio 可能是我打算做的完美 Widget,但看起来我只需要制作自己的自定义 Widget

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)