要在Flutter中更改
helpText
中showDateRangePicker()
的文本样式。
buildMaterialDatePicker({BuildContext context, SearchVM model})
async {
final DateTimeRange picked = await showDateRangePicker(
context: context,
firstDate: initialDate,
helpText: 'Select a Date or Date-Range',
fieldStartHintText: 'Start Booking date',
fieldEndHintText: 'End Booking date',
currentDate: initialDate,
lastDate: DateTime(2020, initialDate.month + 1,
initialDate.day),
builder: (BuildContext context, Widget child) {
return Theme(
data: ThemeData.dark().copyWith(
colorScheme: ColorScheme.dark(
primary: Colors.greenAccent,
onPrimary: oppColor,
surface: Colors.greenAccent,
onSurface: oppColor,
),
dialogBackgroundColor: mainColor,
),
child: child,
);
},
);
}
答案 0 :(得分:0)
要更改颜色,字体等,必须将元素包装到主题中:
Widget returnRangePicker(BuildContext context) {
return Theme(
data: Theme.of(context).copyWith(
accentColor: Colors.green,
primaryColor: Colors.blue,
buttonTheme: ButtonThemeData(
highlightColor: Colors.green,
buttonColor: Colors.green,
colorScheme: Theme.of(context).colorScheme.copyWith(
secondary: epapGreen,
background: Colors.white,
primary: Colors.green,
primaryVariant: Colors.green,
brightness: Brightness.dark,
onBackground: Colors.green),
textTheme: ButtonTextTheme.accent)),
child: Builder(
builder: (context) => FlatButton(
onPressed: () async {
final List<DateTime> picked = await DateRangePicker.showDatePicker(
context: context,
initialFirstDate: DateTime.now(),
initialLastDate:
DateTime.now()).add(Duration(days: 7),
firstDate: DateTime(2015),
lastDate: DateTime(2020));
if (picked != null && picked.length == 2) {
print(picked);
}
},
child: Text(
"Choose range",
style: TextStyle(color: Colors.green),
),
),
),
);
}
答案 1 :(得分:0)