我想基于布尔值显示和隐藏 HomeCategory 对象。我目前有这个:
_isOn ? HomeCategory(0, Icons.check, Colors.blue[800], "Check In", [Task(0, "Check In", true),]) : "",
Run Code Online (Sandbox Code Playgroud)
但是它会引发错误,因为如果它关闭,我将传递一个空字符串。我如何向它传递一个空对象或隐藏它?这是一个像这样的列表:
_isOn ? HomeCategory(0, Icons.check, Colors.blue[800], "Check In", [Task(0, "Check In", true),]) : "",
HomeCategory(1, Icons.chat_bubble, Colors.red, "Forums", [ Task(1, "Questions", true),]),
HomeCategory(2, Icons.star, Colors.blue[200], "Goals", [ Task(2, "Goals", true),]),
HomeCategory(3, Icons.monetization_on, Colors.orange[700], "Budget", [ Task(3, "Budget", true),]),
HomeCategory(4, Icons.shopping_basket, Colors.brown[300], "Shopping", [ Task(4, "Items", true),]),
HomeCategory(5, Icons.calendar_today, Colors.purple[900], "My Day & Calendar", [ Task(4, "Events", false),]),
HomeCategory(6, Icons.check_circle_outline, Colors.teal[700], "Check Out", [ Task(4, "Tasks", false),]),
HomeCategory(7, Icons.dock, Colors.grey[700], "Connect", [ Task(4, "Tasks", false),]),
HomeCategory(8, Icons.local_pharmacy, Colors.green, "My Medication", [ Task(4, "Tasks", false),]),
HomeCategory(9, Icons.settings, Colors.yellow[800], "Settings", [ Task(4, "Tasks", false),]),
Run Code Online (Sandbox Code Playgroud)
你可以这样做 :
_isOn ? HomeCategory() : SizedBox()
Run Code Online (Sandbox Code Playgroud)
但由于它在 a 中List<Widget>
,所以if
条件更清晰:
if(_isOn)
HomeCategory()
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
17385 次 |
最近记录: |