코딩(개발)/Flutter
DatePicker
플랜데버
2021. 2. 9. 13:46
코드
pubspec.yaml
dependencies:
flutter:
sdk: flutter
flutter_localizations: # Add this line
sdk: flutter
syncfusion_flutter_datepicker: ^18.4.41-beta
date_time_format: ^1.1.1+1
main.dart
import 'package:flutter/material.dart';
import 'package:date_time_format/date_time_format.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
localizationsDelegates: [
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
// if it's a RTL language
],
supportedLocales: [
const Locale('ko', 'KR'),
// include country code too
],
theme: ThemeData(
visualDensity: VisualDensity.adaptivePlatformDensity,
textTheme: TextTheme(bodyText2: TextStyle(fontSize: 21))),
home: Home(),
);
}
}
class Home extends StatefulWidget {
@override
_HomeState createState() => _HomeState();
}
class _HomeState extends State<Home> {
DateTime _dateTime;
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('app'),
),
body: Container(
child: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text(_dateTime == null ? 'none' : _dateTime.format('Y-m-d')),
RaisedButton(
child: Text('pick a date'),
onPressed: () {
showDatePicker(
context: context,
initialDate: DateTime.now(),
firstDate: DateTime.now(), //ex DateTime(2001)
lastDate:
DateTime.now().add(const Duration(days: 60)))
.then((date) {
setState(() {
_dateTime = date;
});
});
},
)
],
),
),
),
);
}
}
pub.dev/packages/date_time_format
date_time_format | Dart Package
Utilities for formatting Dart's DateTime object using standard date/time notation or as a relative time offset.
pub.dev
flutter.dev/docs/development/accessibility-and-localization/internationalization
Internationalizing Flutter apps
How to internationalize your Flutter app.
flutter.dev