플랜데버 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