如何在 Flutter 小部件中使用 If 语句

Mac*_*caw 2 dart flutter

我是颤振的新手,正在练习简单的应用程序。但是现在,我可以插入一行条件语句,但我想添加 If 语句。所以我可以添加更多的声明。我怎么做?这是我的代码。请看一看。当我达到目标数量颜色时,我想添加更多颜色: _moneyCounter > 1000 ?Colors.green : Colors.red,

Expanded(
              child: Center(
                child: Text(
                  '\USD $_moneyCounter',
                  style: TextStyle(
                    color: _moneyCounter > 1000 ? Colors.green : Colors.red,
                    fontSize: 40.0,
                  ),
                ),
              ),
            ),
Run Code Online (Sandbox Code Playgroud)

Rao*_*che 14

您可以使用多个三元运算符:

_moneyCounter > 1000 ? Colors.green : _moneyCounter > 2000 ? Colors.Blue : Colors.red
Run Code Online (Sandbox Code Playgroud)

但是为了可读性,我不建议这样做,这样您就可以使用返回颜色的函数:

Color getMyColor(int moneyCounter) {
 if (moneyCounter == 1000) then {
    return Colors.green;
 } else
  if (moneyCounter == 2000) then {
   return Colors.red;
  }
}
Run Code Online (Sandbox Code Playgroud)

然后使用该功能:

color: getMyColor(_moneyCounter),
Run Code Online (Sandbox Code Playgroud)


Har*_*ara 9

您可以使用以下不同的小部件,

Column(
    children: [
        if (_id == 0) ...[
          Container()
        ] else if(_id == 1)...[
          Text("Hello")
        ] else ...[
          SizedBox(height: 20)
        ],
    ],
 ),
Run Code Online (Sandbox Code Playgroud)