web-dev-qa-db-fra.com

Changer la couleur de la case cochée de flutter

Je dois changer la couleur de la coche de la case à cocher dans le flottement et aucun paramètre n'est donné pour changer la couleur dans la case à cocher.

Checkbox(
   value: isCheck,
   activeColor: Colors.grey,
   onChanged: (bool value) {
   setState(() { isCheck = value;});
       })

Code de classe Dart

  const Checkbox({
    Key key,
    @required this.value,
    this.tristate = false,
    @required this.onChanged,
    this.activeColor,
    this.materialTapTargetSize,
  }) : assert(tristate != null),
       assert(tristate || value != null),
       super(key: key);
11
Farhana

En ce moment j'utilise -

Flutter (Channel dev, v1.2.2,)

L'option pour changer la couleur de la coche n'est pas présente sur le canal stable.

Checkbox(
          value: isCheck,
          checkColor: Colors.yellowAccent,  // color of tick Mark
          activeColor: Colors.grey,
          onChanged: (bool value) {
            setState(() {
              isCheck = value;
            });
          }),
6
anmol.majhail

Pour changer la couleur d'une case à cocher:

Lorsqu'il est inactif (couleur de la bordure):

Theme(
      data: Theme.of(context).copyWith(
        unselectedWidgetColor: Colors.white,
      ),
      child: Checkbox(...),
    )

Lorsqu'elle est cochée (couleur de l'icône):

Checkbox(
        checkColor: Colors.red,
        ...
      )

Lorsqu'il est actif (coché):

Checkbox(
        activeColor: Colors.amberAccent,
        ...
      )

Exemple de code complet:

Theme(
      data: Theme.of(context).copyWith(
        unselectedWidgetColor: Colors.white,
      ),
      child: Checkbox(
        checkColor: Colors.red,
        activeColor: Colors.amberAccent,
        value: _terms,
        onChanged: (bool value) {
          setState(() {
            _terms = value;
          });
        },
      ),
    )

vous pouvez le changer avec la variable bool qui est isCheck dans votre cas comme ceci:

Checkbox(
   value: isCheck,
   activeColor: isCheck ? Colors.green: Colors.grey ,
   onChanged: (bool value) {
   setState(() { isCheck = value;});
       })
0
cipli onat

Si vous ne souhaitez pas le définir dans chaque case à cocher, utilisez ceci:


new ThemeData.dark().copyWith(
  unselectedWidgetColor: Colors.orange.shade800,
  toggleableActiveColor: Colors.orange.shade800,
0
Ride Sun