格式化 datePicker 标头 - Flutter

Posted

技术标签:

【中文标题】格式化 datePicker 标头 - Flutter【英文标题】:Format datePicker Header - Flutter 【发布时间】:2020-08-11 08:57:53 【问题描述】:

如何格式化我的日期选择器以在标题中包含黑色文本和黑色按钮文本?这是我的代码:

Future<Null> _selectDate(BuildContext context) async 
DateFormat formatter =
    DateFormat('dd/MM/yyyy'); //specifies day/month/year format

final DateTime picked = await showDatePicker(


    context: context,
    initialDate: selectedDate,
    firstDate: DateTime(1901, 1),
    builder: (BuildContext context, Widget child) 
      return Theme(
        data: ThemeData.light().copyWith(
          //primaryColor: kPrimaryColor,
          colorScheme: ColorScheme.light(primary: kPrimaryColor),
        buttonTheme: ButtonThemeData(
            textTheme: ButtonTextTheme.primary
        ),),
        child: child,
      );
    ,
    lastDate: DateTime(2100));

这就是日期选择器当前的样子:

【问题讨论】:

【参考方案1】:

要设置按钮文本颜色,您可以将colorScheme 用于buttonTheme

要设置标题文本颜色,您可以使用onPrimary

builder: (BuildContext context, Widget child) 
                return Theme(
                  data: ThemeData.light().copyWith(
                    colorScheme: ColorScheme.light(
                        primary: kPrimaryColor,
                        onPrimary: Colors.black,),
                    buttonTheme: ButtonThemeData(
                      colorScheme: Theme.of(context)
                          .colorScheme
                          .copyWith(primary: Colors.black),
                    ),
                  ),
                  child: child,
                );
              ),

结果:

【讨论】:

以上是关于格式化 datePicker 标头 - Flutter的主要内容,如果未能解决你的问题,请参考以下文章

在运行时更改系统日期格式时更新 DatePicker 中的日期格式

Angular Datepicker更改日期格式

php 格式化DB的DatePicker字段

在 Datepicker 中将日期格式更改为 yyyy-mm-dd

在 beforeShowDay 函数中更改 datepicker 日期格式

如何从我的 DatePicker 片段中传输格式化的日期字符串?