Flutter 编写决策树的最佳方法是什么?(条件渲染/可见性/其他)

Flutter 编写决策树的最佳方法是什么?(条件渲染/可见性/其他),flutter,dart,Flutter,Dart,我正在用flatter编写一个应用程序,它遵循一个决策树来确定一个人发现了什么昆虫。最好的办法是什么。底部的图像显示了我试图遵循的树类型的一个简单示例 当用户回答第一个问题时,我想在下面显示下一个问题,这将根据用户输入的不同而有所不同。作为参考,我可能有一些问题不是简单的是/否答案,而是分成三条路径(即6条腿/8条腿/多条腿) 我不确定这在flutter中是如何实现的,比如我在脚手架上放了一个if语句,如下所示: if(input==“yes”){show widget1} else if(输入

我正在用flatter编写一个应用程序,它遵循一个决策树来确定一个人发现了什么昆虫。最好的办法是什么。底部的图像显示了我试图遵循的树类型的一个简单示例

当用户回答第一个问题时,我想在下面显示下一个问题,这将根据用户输入的不同而有所不同。作为参考,我可能有一些问题不是简单的是/否答案,而是分成三条路径(即6条腿/8条腿/多条腿)

我不确定这在flutter中是如何实现的,比如我在脚手架上放了一个if语句,如下所示:

if(input==“yes”){show widget1}

else if(输入==“否”){render widget2}

“无法将元素类型'Map'分配给列表类型'Widget'”

我认为我正在尝试的是传统的渲染,并且已经看到这在“可见性”类中是可能的,但它似乎仍然不是最好的解决方案。如果您有任何建议或示例代码,我将不胜感激

提前谢谢


如果可能的条目是二进制的(只有两个选项),则可以使用如下三元:

input=='yes'?show widget1:show widget2;
只是想让你知道:三元执行以下代码?如果前一个条件为真,则在以下情况后执行代码:

如果您需要渲染并做出非二进制决策,您可以创建一个映射方法,或者使用
if(condition)show小部件
(注意,我没有使用花括号)