A calendar widget for Flutter Apps.
Borrowed DateTime utility functions from the Tzolkin Calendar web element.
Add to your pubspec dependencies:
flutter_calendar: ^0.0.1
Render the map with one of three options:
new Calendar()
new Calendar(
isExpandable: true;
)
new Calendar(
// A builder function that renders each calendar tile how you'd like.
dayBuilder: new Text('!')
)
// Three optional params:
final VoidCallback onDateSelected;
final bool isExpandable;
final Widget dayBuilder;
example/lib/main.dart
import 'package:flutter/material.dart';
import 'package:flutter_calendar/flutter_calendar.dart';
main() {
runApp(new CalendarViewApp());
}
class CalendarViewApp extends StatelessWidget {
void handleNewDate(date) {
print(date);
}
@override
Widget build(BuildContext context) {
return new MaterialApp(
title: 'Flutter Demo',
theme: new ThemeData(
primarySwatch: Colors.purple,
),
home: new Scaffold(
appBar: new AppBar(
title: new Text('Flutter Calendar'),
),
body: new Container(
margin: new EdgeInsets.symmetric(
horizontal: 5.0,
vertical: 10.0,
),
child: new ListView(
shrinkWrap: true,
children: <Widget>[
new Text('The Default Calendar:'),
new Calendar(
onDateSelected: (date) => handleNewDate(date),
),
new Divider(
height: 50.0,
),
new Text('The Expanded Calendar:'),
new Calendar(
isExpandable: true,
),
new Divider(
height: 50.0,
),
new Text('A Custom Weekly Calendar:'),
new Calendar(
onSelectedRangeChange: (range) => print(range),
isExpandable: true,
dayBuilder: (BuildContext context, DateTime day) {
return new InkWell(
onTap: () => print(day),
child: new Container(
decoration: new BoxDecoration(
border: new Border.all(color: Colors.black38)),
child: new Text(
day.day.toString(),
),
),
);
},
),
],
),
),
),
);
}
}
Add this to your package's pubspec.yaml file:
dependencies:
flutter_calendar: ^0.0.4
You can install packages from the command line:
with pub:
$ pub get
with Flutter:
$ flutter packages get
Alternatively, your editor might support pub get
or flutter packages get
.
Check the docs for your editor to learn more.
Now in your Dart code, you can use:
import 'package:flutter_calendar/flutter_calendar.dart';
Version | Uploaded | Documentation | Archive |
---|---|---|---|
0.0.8 | Oct 16, 2018 |
|
|
0.0.7 | Oct 8, 2018 |
|
|
0.0.6 | Oct 5, 2018 |
|
|
0.0.5 | Oct 2, 2018 |
|
|
0.0.4 | Jun 27, 2018 |
|
|
0.0.3 | Jun 26, 2018 |
|
|
0.0.2 | Apr 23, 2018 |
|
|
0.0.1 | Mar 20, 2018 |
|
|
Popularity:
Describes how popular the package is relative to other packages.
[more]
|
94
|
Health:
Code health derived from static analysis.
[more]
|
0
|
Maintenance:
Reflects how tidy and up-to-date the package is.
[more]
|
18
|
Overall:
Weighted score of the above.
[more]
|
51
|
We analyzed this package on Feb 14, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:
Detected platforms:
Error(s) prevent platform classification:
Fix dependencies in
pubspec.yaml
.
Fix dependencies in pubspec.yaml
.
Running flutter packages pub upgrade
failed with the following output:
ERR: The current Dart SDK version is 2.1.1-dev.3.2.flutter-f4afaee422.
Because flutter_calendar depends on date_utils <0.1.0 which requires SDK version >=1.20.1 <2.0.0, version solving failed.
Format lib/flutter_calendar.dart
.
Run flutter format
to format lib/flutter_calendar.dart
.
Fix platform conflicts. (-20 points)
Error(s) prevent platform classification:
Fix dependencies in pubspec.yaml
.
Make sure dartdoc
successfully runs on your package's source files. (-10 points)
Dependencies were not resolved.
Provide a file named CHANGELOG.md
. (-20 points)
Changelog entries help developers follow the progress of your package. See the example generated by stagehand
.
The package description is too short. (-16 points)
Add more detail to the description
field of pubspec.yaml
. Use 60 to 180 characters to describe the package, what it does, and its target use case.
Package is pre-v0.1 release. (-10 points)
While nothing is inherently wrong with versions of 0.0.*
, it might mean that the author is still experimenting with the general direction of the API.
Update README.md
. (-6 points)
3 image links are insecure (e.g. http://res.cloudinary.com/ericwindmill/image/upload/c_scale,h_500/v1518649521/flutter_calendar_standard_lu6l9i.gif
), use https
URLs instead.
Package | Constraint | Resolved | Available |
---|---|---|---|
Direct dependencies | |||
Dart SDK | >=2.0.0-dev.28.0 <3.0.0 |