Есть ли способ изменить значок кнопки переключения на нажатой или есть ли способ заставить кнопку значка функционировать как кнопка переключения?

Я пробовал следующий метод, но хочу снова изменить значок на первую нажатую кнопку.

IconButton( iconSize: 30.0,
            padding: EdgeInsets.only(left:4,right:4,top:0),
            icon: Padding(
            child: pressed ==true ? 
            Icon(Icons.start):Icon(Icons.stop)
                  ),
                  onPressed: () {
                    setState(() {
                      pressed=true;
                    });
                  }
0
Axen_Rangs 14 Июн 2020 в 18:26

1 ответ

Лучший ответ
IconButton( iconSize: 30.0,
        padding: EdgeInsets.only(left:4,right:4,top:0),
        icon: Padding(
        child: pressed ==true ? 
        Icon(Icons.start):Icon(Icons.stop)
              ),
              onPressed: () {
                setState(() {
                  pressed = !pressed;
                });
              }

pressed = !pressed - это то же самое, что сказать, что нажатие равно тому, что нажато в данный момент не нажато. Поэтому при нажатии он переключится на истину, если логическое значение ложно, и на ложь, если логическое значение истинно.

1
alfredo-fredo 14 Июн 2020 в 15:45