[英]Changing The Text Color Of Cupertino Date Picker
Attached below is my current code for changing the text color of CupertinoDatePicker:下面附上我当前用于更改 CupertinoDatePicker 文本颜色的代码:
Container(
decoration:
BoxDecoration(borderRadius: BorderRadius.circular(12)),
height: MediaQuery.of(context).size.height * 0.18,
child: CupertinoTheme(
data: CupertinoThemeData(
textTheme: CupertinoTextThemeData(
pickerTextStyle: TextStyle(
color: Color(0xffB59CCF),
)),
),
child: CupertinoDatePicker(
However, the color hasn't changed as shown below:但是,颜色没有改变,如下所示:
My theme in main.dart is as follows:我在 main.dart 中的主题如下:
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(
textTheme: TextTheme(
bodyText1: TextStyle(),
bodyText2: TextStyle(),
).apply(
bodyColor: Colors.white.withOpacity(0.87),
displayColor: Colors.white.withOpacity(0.87)),
primaryColor: Colors.white,
secondaryHeaderColor: Colors.white.withOpacity(0.60),
backgroundColor: Color(0xff111016),
elevatedButtonTheme: ElevatedButtonThemeData(
style: ElevatedButton.styleFrom(
padding: EdgeInsets.all(15),
shape: CircleBorder(),
elevation: 6,
onPrimary: Color(0xff04072E),
primary: Colors.yellow[100],
textStyle: TextStyle(fontSize: 21)),
),
I'm not sure what is causing the text color of CupertinoDatePicker to be black, but I would like it to change its color.我不确定是什么导致 CupertinoDatePicker 的文本颜色为黑色,但我希望它改变它的颜色。 Any help is appreciated!
任何帮助表示赞赏! Thanks!
谢谢!
After changing to dateTimePickerTextStyle, the following occurs:更改为 dateTimePickerTextStyle 后,出现以下情况:
What you are looking for is the您正在寻找的是
dateTimePickerTextStyle: TextStyle(color: Colors.white),
This property is part of the CupertinoTextThemeData
.此属性是
CupertinoTextThemeData
的一部分。
So your code should be like this,所以你的代码应该是这样的,
CupertinoTheme(
data: CupertinoThemeData(
textTheme: CupertinoTextThemeData(
dateTimePickerTextStyle: TextStyle(color: Colors.white),
),
),
child: CupertinoDatePicker(
onDateTimeChanged: (_) {},
),
)
From the official documentation,从官方文档来看,
Content texts are shown with CupertinoTextThemeData.dateTimePickerTextStyle.
内容文本使用 CupertinoTextThemeData.dateTimePickerTextStyle 显示。
Use dateTimePickerTextStyle
instead of pickerTextStyle
使用
dateTimePickerTextStyle
而不是pickerTextStyle
Here is the working code这是工作代码
CupertinoTheme(
data: CupertinoThemeData(
textTheme: CupertinoTextThemeData(
dateTimePickerTextStyle: TextStyle(
color: Colors.red,
),
),
),
child: CupertinoDatePicker(
minimumDate: DateTime.now(),
minuteInterval: 1,
mode: CupertinoDatePickerMode.dateAndTime,
onDateTimeChanged: (DateTime dateTime) {
print("dateTime: ${dateTime}");
},
),
);
Please refer CupertinoTextThemeData请参考CupertinoTextThemeData
return CupertinoTheme(
data: CupertinoThemeData(
brightness: Brightness.dark,
),
child: Container(
height: 200,
child: CupertinoDatePicker(
backgroundColor: darkColor,
initialDateTime: DateTime.now(),
maximumDate: new DateTime(2050, 12, 30),
minimumYear: 2010,
maximumYear: 3000,
minuteInterval: 1,
mode: CupertinoDatePickerMode.date,
use24hFormat: true,
onDateTimeChanged: (DateTime newdate) {
print(newdate);
setState(() {
tanggalController.text =
newdate.formatDateView();
});
}),
),
);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.