calendar_date_picker2 ๋ผ์ด๋ธ๋ฌ๋ฆฌ
์ธ์ ์ฌ์ฉํ๋๊ฐ
โข
์ผ์ ์ ํ (์บ๋ฆฐ๋ ์ฑ)
โข
์์ฝ ์์คํ
(ํธํ
, ๋ณ์, ๋ฏธ์ฉ์ค)
โข
๊ธฐ๊ฐ ์ ํ (์์์ผ ~ ์ข
๋ฃ์ผ)
โข
์ถ์ ์ฒดํฌ / ์ด๋ฒคํธ ๋ ์ง ์ ํ
์ค์น ๋ฐฉ๋ฒ
dependencies:
calendar_date_picker2: ^0.5.0
YAML
๋ณต์ฌ
flutter pub get
Bash
๋ณต์ฌ
๊ธฐ๋ณธ ์ฌ์ฉ๋ฒ
import 'package:calendar_date_picker2/calendar_date_picker2.dart';
Dart
๋ณต์ฌ
CalendarDatePicker2(
config: CalendarDatePicker2Config(),
value: [],
onValueChanged: (dates) {
print(dates);
},
)
Dart
๋ณต์ฌ
์ฃผ์ ๊ฐ๋
value
value: [DateTime.now()]
Dart
๋ณต์ฌ
โข
๋จ์ผ ์ ํ โ 1๊ฐ
โข
๋ค์ค ์ ํ โ ์ฌ๋ฌ ๊ฐ
โข
๋ฒ์ ์ ํ โ ์์ / ๋ ๋ ์ง 2๊ฐ
onValueChanged
onValueChanged: (dates) {
setState(() {
selectedDates = dates;
});
}
Dart
๋ณต์ฌ
config
config: CalendarDatePicker2Config(
calendarType: CalendarDatePicker2Type.single,
)
Dart
๋ณต์ฌ
์บ๋ฆฐ๋ ํ์
๋จ์ผ ์ ํ
calendarType: CalendarDatePicker2Type.single
Dart
๋ณต์ฌ
๋ค์ค ์ ํ
calendarType: CalendarDatePicker2Type.multi
Dart
๋ณต์ฌ
๋ฒ์ ์ ํ (๊ฐ์ฅ ๋ง์ด ์)
calendarType: CalendarDatePicker2Type.range
Dart
๋ณต์ฌ
UI ์ปค์คํฐ๋ง์ด์ง
์์ ๋ณ๊ฒฝ
config: CalendarDatePicker2Config(
selectedDayHighlightColor: Colors.blue,
todayTextStyle: TextStyle(color: Colors.red),
)
Dart
๋ณต์ฌ
์์ผ ์คํ์ผ
weekdayLabelTextStyle: TextStyle(
fontWeight: FontWeight.bold,
)
Dart
๋ณต์ฌ
ํฌ๊ธฐ ์กฐ์
dayMaxWidth: 40,
Dart
๋ณต์ฌ
์ ํ ์คํ์ผ
selectedDayTextStyle: TextStyle(
color: Colors.white,
)
Dart
๋ณต์ฌ
๋ค์ด์ผ๋ก๊ทธ๋ก ๋์ฐ๊ธฐ (์ค์
)
showDialog(
context: context,
builder: (context) {
return AlertDialog(
content: CalendarDatePicker2(
config: CalendarDatePicker2Config(),
value: selectedDates,
onValueChanged: (dates) {
setState(() {
selectedDates = dates;
});
},
),
);
},
);
Dart
๋ณต์ฌ
์ ์ฒด ์์
class CalendarExample extends StatefulWidget {
_CalendarExampleState createState() => _CalendarExampleState();
}
class _CalendarExampleState extends State<CalendarExample> {
List<DateTime?> selectedDates = [];
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text("์บ๋ฆฐ๋ ์์ ")),
body: Column(
children: [
CalendarDatePicker2(
config: CalendarDatePicker2Config(
calendarType: CalendarDatePicker2Type.range,
selectedDayHighlightColor: Colors.blue,
),
value: selectedDates,
onValueChanged: (dates) {
setState(() {
selectedDates = dates;
});
},
),
Text("์ ํ๋ ๋ ์ง: $selectedDates"),
],
),
);
}
}
Dart
๋ณต์ฌ







