Как я могу изменить цвет фона CupertinoDatePicker
Я использую CupertinoDatePicker в моем приложении.
Container(
height: 200,
padding: const EdgeInsets.all(16.0),
child: CupertinoDatePicker(
mode: CupertinoDatePickerMode.date,
minimumYear: DateTime.now().year,
onDateTimeChanged: (DateTime value) {
print(value);
},
)
Приложение использует MaterialApp (MaterialTheme). Есть ли способ изменить цвет фона CupertinoDatePicker?
Это то, что я пытался (обернуть CupertinoDatePicker вокруг CupertinoTheme и установить цвет на черный), и это не работает.
Container(
height: 200,
padding: const EdgeInsets.all(16.0),
child: CupertinoTheme(
data: CupertinoThemeData(
primaryColor: Colors.black),
child: CupertinoDatePicker(
mode: CupertinoDatePickerMode.date,
minimumYear: DateTime.now().year,
onDateTimeChanged: (DateTime value) {
print(value);
},
),
),
)
0 ответов
На момент написания этой статьи это невозможно, и в исходном коде есть комментарий для date_picker.dart
это гласит:
// Рассматривает возможность установки цвета фона по умолчанию из темы в будущем. const Color _kBackgroundColor = CupertinoColors.white;
На момент написания этой статьи Flutter добавил свойство backgroundColor в CupertinoDatePicker на главном канале. См. https://github.com/flutter/flutter/commit/19cdb21cb67acf51fb9b4e4e7a367d0bcd82fc7b Он поддерживается в следующих версиях: master (#39056.101 v1.101 v1.101 v1.101 v1.101 v1.101 v1.12, v1.10..10.8 v1.10.7 v1.10.6 v1.10.5 v1.10.4 v1.10.3 v1.10.2 v1.10.1 v1.10.0 v1.9.7 v1.9.6
Вы можете установить backgroundColor следующим образом:
CupertinoTimerPicker(
backgroundColor: Colors.black,
initialTimerDuration: timer,
mode: CupertinoTimerPickerMode.hms,
onTimerDurationChanged: (Duration newTimer) {
setState(() {
timer = newTimer;
});
Если вы выберете темную тему для своего приложения flutter, цвет текста CupertinoDatePicker изменится на белый.