[flutter] 플러터 커퍼티노 스테퍼를 이용한 날짜 포맷 변경하기

플러터는 Google에서 개발한 크로스 플랫폼 앱 개발 프레임워크입니다. 플러터를 사용하면 iOS와 Android 모두에서 동작하는 앱을 쉽게 개발할 수 있습니다. 이번에는 플러터의 커퍼티노 스테퍼를 이용하여 날짜 포맷을 변경하는 방법에 대해 알아보겠습니다.

커퍼티노 스테퍼란?

커퍼티노 스테퍼는 iOS의 네이티브 디자인을 흉내내는 플러터 위젯입니다. 스테퍼는 사용자가 값을 증가 또는 감소시킬 수 있는 숫자 입력을 제공합니다. 이를 이용하여 날짜 값을 변경할 수 있습니다.

날짜 포맷 변경하기

플러터에서는 intl 패키지를 사용하여 날짜 포맷을 변경할 수 있습니다. 먼저, intl 패키지를 pubspec.yaml 파일에 추가합니다.

dependencies:
  flutter:
    sdk: flutter
  intl: ^0.17.0

패키지를 추가한 후에는 DateTime 클래스의 format 메소드를 사용하여 날짜 포맷을 변경할 수 있습니다. 다음은 날짜를 yyyy-MM-dd 형식으로 출력하는 예제 코드입니다.

import 'package:flutter/material.dart';
import 'package:intl/intl.dart';

class DateStepPicker extends StatefulWidget {
  @override
  _DateStepPickerState createState() => _DateStepPickerState();
}

class _DateStepPickerState extends State<DateStepPicker> {
  DateTime selectedDate = DateTime.now();

  @override
  Widget build(BuildContext context) {
    return Stepper(
      onStepContinue: () {},
      onStepCancel: () {},
      steps: [
        Step(
          title: Text('Date'),
          content: Text(DateFormat('yyyy-MM-dd').format(selectedDate)),
          isActive: true,
        ),
      ],
    );
  }
}

위의 코드에서 DateFormat 클래스의 생성자에는 날짜 포맷을 인자로 전달합니다. format 메소드를 호출하여 DateTime 객체를 원하는 포맷으로 변환할 수 있습니다.

결론

플러터의 커퍼티노 스테퍼와 intl 패키지의 DateFormat 클래스를 이용하여 날짜 포맷을 변경하는 방법을 알아보았습니다. 이를 통해 플러터 앱의 UI를 더욱 다양하게 디자인할 수 있습니다.

참고 자료