web-dev-qa-db-fra.com

Détecter si le mode sombre iOS13 est activé à partir de Flutter / Dart

J'écris une application Flutter pour Android et iOS qui changera son style/thème en fonction de l'état du mode sombre d'iOS.

Existe-t-il actuellement quelque chose comme un MediaQuery.isDarkModeEnabled dans Flutter?

Il y a un problème GitHub ouvert ici mais l'équipe Flutter doit être submergée de problèmes, donc je ne vois pas cela implémenté trop tôt.

Je peux utiliser 'traitCollection.userInterfaceStyle' à partir de canaux de code spécifiques à iOS, mais l'ajout de code spécifique à la plate-forme pour les applications Flutter/Dart n'est pas quelque chose que je connais. Je travaille actuellement sur cette solution!

Par exemple, quelqu'un pourrait avoir un CupertinoPicker avec des couleurs adaptatives:

CupertinoPicker(
    backgroundColor: isDarkModeEnabled ? Colors.black : Colors.white,
    children: items.map((thisItem) => Text(thisItem.name)).toList(),
    itemExtent: 32,
    onSelectedItemChanged: (newItem) {
        setState(() => this.item = items[newItem]);
    }
)
11
iron59

En fait, ne posbile pas avec le canal maître, regardez https://github.com/flutter/flutter/issues/39685

0
acuedd