Skip to content

Commit ed7f98c

Browse files
Merge pull request #1 from Indumathi1195R/patch-1
Update README.md
2 parents 8622172 + d9706e2 commit ed7f98c

File tree

1 file changed

+56
-2
lines changed

1 file changed

+56
-2
lines changed

README.md

Lines changed: 56 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,56 @@
1-
# switching-views-date-range-picker-flutter
2-
How to switch between the calendar views in Flutter date range picker?
1+
# How to switch between the date range picker views in Flutter date range picker (SfDateRangePicker)?
2+
3+
In the flutter date range picker, you can navigate between the picker views. Switching between picker views has been achieved using the `view` property of DateRangePickerController and tapping the header of the picker views.
4+
5+
## Step 1:
6+
In initState(), initialize the controller for date range picker.
7+
8+
```xml
9+
DateRangePickerController _controller;
10+
11+
@override
12+
void initState() {
13+
// TODO: implement initState
14+
_controller = DateRangePickerController();
15+
super.initState();
16+
}
17+
```
18+
19+
20+
## Step 2:
21+
Navigate between the picker views using the PopupMenuButton widget as follows. Also navigating between the picker views can be achieved by tapping the header of the picker views.
22+
23+
```xml
24+
leading: PopupMenuButton<String>(
25+
icon: Icon(Icons.calendar_today),
26+
itemBuilder: (BuildContext context) => views.map((String choice) {
27+
return PopupMenuItem<String>(
28+
value: choice,
29+
child: Text(choice),
30+
);
31+
}).toList(),
32+
onSelected: (String value) {
33+
if (value == 'Month') {
34+
_controller.view = DateRangePickerView.month;
35+
} else if (value == 'Year') {
36+
_controller.view = DateRangePickerView.year;
37+
} else if (value == 'Decade') {
38+
_controller.view = DateRangePickerView.decade;
39+
} else if (value == 'Century') {
40+
_controller.view = DateRangePickerView.century;
41+
}
42+
},
43+
),
44+
```
45+
## Step 3:
46+
Place the calendar inside the body of the Scaffold widget.
47+
48+
```xml
49+
body: Card(
50+
margin: const EdgeInsets.fromLTRB(50, 150, 50, 150),
51+
child: SfDateRangePicker(
52+
controller: _controller,
53+
view: DateRangePickerView.month,
54+
),
55+
)
56+
```

0 commit comments

Comments
 (0)