master
ifgyong 4 years ago
parent 5dccd93949
commit fe5c7e4480

@ -75,7 +75,7 @@
<entry key="flutter_custom_calendar">
<value>
<list>
<option value="$USER_HOME$/flutterSDK/flutter1.17-stable/.pub-cache/hosted/pub.flutter-io.cn/flutter_custom_calendar-1.0.2/lib" />
<option value="$USER_HOME$/flutterSDK/flutter1.17-stable/.pub-cache/hosted/pub.flutter-io.cn/flutter_custom_calendar-1.0.4+0.2/lib" />
</list>
</value>
</entry>
@ -224,7 +224,7 @@
<root url="file://$USER_HOME$/flutterSDK/flutter1.17-stable/.pub-cache/hosted/pub.flutter-io.cn/convert-2.1.1/lib" />
<root url="file://$USER_HOME$/flutterSDK/flutter1.17-stable/.pub-cache/hosted/pub.flutter-io.cn/crypto-2.1.4/lib" />
<root url="file://$USER_HOME$/flutterSDK/flutter1.17-stable/.pub-cache/hosted/pub.flutter-io.cn/cupertino_icons-0.1.3/lib" />
<root url="file://$USER_HOME$/flutterSDK/flutter1.17-stable/.pub-cache/hosted/pub.flutter-io.cn/flutter_custom_calendar-1.0.2/lib" />
<root url="file://$USER_HOME$/flutterSDK/flutter1.17-stable/.pub-cache/hosted/pub.flutter-io.cn/flutter_custom_calendar-1.0.4+0.2/lib" />
<root url="file://$USER_HOME$/flutterSDK/flutter1.17-stable/.pub-cache/hosted/pub.flutter-io.cn/image-2.1.12/lib" />
<root url="file://$USER_HOME$/flutterSDK/flutter1.17-stable/.pub-cache/hosted/pub.flutter-io.cn/matcher-0.12.6/lib" />
<root url="file://$USER_HOME$/flutterSDK/flutter1.17-stable/.pub-cache/hosted/pub.flutter-io.cn/meta-1.1.8/lib" />

@ -7,8 +7,15 @@
</component>
<component name="ChangeListManager">
<list default="true" id="18463f0e-cf10-4ee2-975b-376476396e12" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/.idea/libraries/Dart_Packages.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/libraries/Dart_Packages.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/README.md" afterDir="false" />
<change beforePath="$PROJECT_DIR$/example/lib/main.dart" beforeDir="false" afterPath="$PROJECT_DIR$/example/lib/main.dart" afterDir="false" />
<change beforePath="$PROJECT_DIR$/example/pubspec.lock" beforeDir="false" afterPath="$PROJECT_DIR$/example/pubspec.lock" afterDir="false" />
<change beforePath="$PROJECT_DIR$/example/pubspec.yaml" beforeDir="false" afterPath="$PROJECT_DIR$/example/pubspec.yaml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/lib/utils/lunar_util.dart" beforeDir="false" afterPath="$PROJECT_DIR$/lib/utils/lunar_util.dart" afterDir="false" />
<change beforePath="$PROJECT_DIR$/lib/utils/solar_term_util.dart" beforeDir="false" afterPath="$PROJECT_DIR$/lib/utils/solar_term_util.dart" afterDir="false" />
<change beforePath="$PROJECT_DIR$/lib/widget/month_view.dart" beforeDir="false" afterPath="$PROJECT_DIR$/lib/widget/month_view.dart" afterDir="false" />
<change beforePath="$PROJECT_DIR$/pubspec.yaml" beforeDir="false" afterPath="$PROJECT_DIR$/pubspec.yaml" afterDir="false" />
</list>
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />

@ -60,7 +60,7 @@ import 'package:flutter_custom_calendar/flutter_custom_calendar.dart';
### 动画演示
![](./img.gif)
![](https://github.com/ifgyong/flutter_custom_calendar/blob/master/img.gif)
### [查看API](https://github.com/ifgyong/flutter_custom_calendar/blob/master/API.md)
### [查看一个例子 如何使用](https://github.com/ifgyong/flutter_custom_calendar/blob/master/example/lib/main.dart)

@ -69,6 +69,11 @@ class _MyHomePageState extends State<MyHomePage> {
dayWidgetBuilder: (DateModel model) {
double wd = (MediaQuery.of(context).size.width - 20) / 7;
bool _isSelected = model.isSelected;
if (_isSelected &&
CalendarSelectedMode.singleSelect ==
controller.calendarConfiguration.selectMode) {
_selectDate = model.toString();
}
return ClipRRect(
borderRadius: BorderRadius.all(Radius.circular(wd / 2)),
child: Container(

@ -75,7 +75,7 @@ packages:
name: flutter_custom_calendar
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.2"
version: "1.0.4+0.2"
flutter_test:
dependency: "direct dev"
description: flutter

@ -29,7 +29,7 @@ dependencies:
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.3
flutter_custom_calendar: ^1.0.2
flutter_custom_calendar: ^1.0.4+0.3
dev_dependencies:
flutter_test:

@ -1,9 +1,9 @@
import 'package:flutter_custom_calendar/flutter_custom_calendar.dart';
import 'package:flutter_custom_calendar/utils/solar_term_util.dart';
/**
*
*/
///**
///*
///*/
class LunarUtil {
static List<int> LUNAR_MONTH_DAYS = [
1887,
@ -461,14 +461,14 @@ class LunarUtil {
0x107e48
];
/**
* 24
*/
////**
///* 24
///*/
static final Map<int, List<String>> SOLAR_TERMS = new Map();
/**
*
*/
////**
///*
///*/
static List<String> SOLAR_CALENDAR = [
"0101元旦",
"0214情人节",

@ -3,14 +3,8 @@ import 'dart:math';
import 'package:flutter_custom_calendar/utils/math_util.dart';
/**
* http://www.cnblogs.com/moodlxs/archive/2010/12/18/2345392.html
* 24
*/
class SolarTermUtil {
/**
* 24
*/
/// 24
static List<String> SOLAR_TERMS = [
"春分",
"清明",
@ -38,25 +32,17 @@ class SolarTermUtil {
"惊蛰",
];
/**
*
*/
///
static final double SECOND_PER_RAD = 180 * 3600 / pi;
/**
*
*/
///
static final double ANGLE_PER_RAD = 180 / pi;
/**
*
* 2000(2000-1-1)
*/
///
/// * 2000(2000-1-1)
static final double J2000 = 2451545;
/**
*
*/
///
static final List<double> H_C_ANGLE_TABLE = [
0,
50287.92262,
@ -68,9 +54,7 @@ class SolarTermUtil {
0.00001
];
/**
*
*/
///
static final List<double> DTS = [
-4000,
108371.7,

@ -249,6 +249,7 @@ class ItemContainerState extends State<ItemContainer> {
case CalendarSelectedMode.multiSelect:
if (calendarProvider.selectedDateList.contains(dateModel)) {
calendarProvider.selectedDateList.remove(dateModel);
_notifiCationUnCalendarSelect(dateModel);
} else {
//
if (calendarProvider.selectedDateList.length ==
@ -258,11 +259,14 @@ class ItemContainerState extends State<ItemContainer> {
}
return;
}
dateModel.isSelected = !dateModel.isSelected;
calendarProvider.selectedDateList.add(dateModel);
// _notifiCationCalendarSelect(dateModel);
}
//
calendarProvider.selectDateModel = dateModel;
print('多选:${calendarProvider.selectedDateList.toString()}');
break;
///
@ -270,14 +274,9 @@ class ItemContainerState extends State<ItemContainer> {
///
calendarProvider.selectedDateList.forEach((element) {
if (configuration.unCalendarSelect != null) {
configuration.unCalendarSelect(element);
}
element.isSelected = false;
_notifiCationUnCalendarSelect(element);
});
if (configuration.calendarSelect != null) {
configuration.calendarSelect(dateModel);
}
//item
if (calendarProvider.lastClickItemState != this) {
@ -285,9 +284,9 @@ class ItemContainerState extends State<ItemContainer> {
calendarProvider.lastClickItemState = this;
}
_notifiCationUnCalendarSelect(calendarProvider.selectDateModel);
dateModel.isSelected = true;
calendarProvider.selectDateModel = dateModel;
_notifiCationCalendarSelect(dateModel);
setState(() {});
break;
@ -332,16 +331,17 @@ class ItemContainerState extends State<ItemContainer> {
setState(() {});
}
///
if (configuration.calendarSelect != null &&
calendarProvider.selectedDateList.length > 0) {
calendarProvider.selectedDateList.forEach((element) {
_notifiCationCalendarSelect(element);
});
}
break;
}
///
if (configuration.calendarSelect != null &&
calendarProvider.selectedDateList.length > 0) {
calendarProvider.selectedDateList.forEach((element) {
_notifiCationCalendarSelect(element);
});
}
refreshItem(!this.dateModel.isSelected);
},
child: configuration.dayWidgetBuilder(dateModel),

@ -1,6 +1,6 @@
name: flutter_custom_calendar
description: A calendar control of flutter that supports three selection modes。
version: 1.0.4
version: 1.0.4+0.3
homepage: http://www.fgyong.cn
author: fgyong
repository: https://github.com/ifgyong/flutter_custom_calendar

Loading…
Cancel
Save