# CXDatePickerView **Repository Path**: reyzhang/CXDatePickerView ## Basic Information - **Project Name**: CXDatePickerView - **Description**: No description available - **Primary Language**: Objective-C - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2021-09-15 - **Last Updated**: 2023-11-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: 日期选择器, github导入 ## README # CXDatePickerView
# Update【更新】 version: 0.2.5 - 修复iOS 14 闪退Bug。 - 增加了选中日期的字体和颜色自定义功能。 - 增加了日期单位的三种显示风格。 - 修复了日期单位文本的字体和颜色自定义功能。 # Install【安装】 在Podfile文件中添加` pod 'CXDatePickerView', '~> 0.2.2'`,并运行 `pod install` # Usage【使用】 * import【导入框架】 `#import "CXDatePickerView.h"` * init【创建选择器】 ``` /** 默认滚动到当前时间 */ - (instancetype)initWithDateStyle:(CXDatePickerStyle)datePickerStyle completeBlock:(void(^)(NSDate *date))completeBlock; /** 滚动到指定的的日期 */ - (instancetype)initWithDateStyle:(CXDatePickerStyle)datePickerStyle scrollToDate:(NSDate *)scrollToDate completeBlock:(void(^)(NSDate *date))completeBlock; /** 定制天时分选择器 */ - (instancetype)initWithZeroDayCompleteBlock:(void(^)(NSInteger days,NSInteger hours,NSInteger minutes))completeBlock; ``` * style【选择器样式】 ``` /** * 弹出日期类型 */ typedef NS_ENUM(NSUInteger, CXDatePickerStyle) { CXDateYearMonthDayHourMinuteSecond = 0, //年月日时分秒 CXDateYearMonthDayHourMinute, //年月日时分 CXDateMonthDayHourMinute, //月日时分 CXDateYearMonthDay, //年月日 CXDateDayHourMinute, //日时分 CXDateYearMonth, //年月 CXDateMonthDay, //月日 CXDateHourMinuteSecond, //时分秒 CXDateHourMinute //时分 }; /** * 弹出日期单位显示类型 */ typedef NS_ENUM(NSUInteger, CXDateLabelUnitStyle) { CXDateLabelUnitFixed = 0, // 添加固定位置的日期单位 CXDateLabelTextAllUnit, // 添加所有日期的日期单位 CXDateLabelTextSelectUnit, // 添加选中日期的日期单位 }; ``` * custom【自定义属性】 ``` /** * 日期单位样式 */ @property (nonatomic, assign) CXDateLabelUnitStyle dateLabelUnitStyle; // 默认0.25 /** * 弹出动画时间 */ @property (nonatomic, assign) CGFloat showAnimationTime; // 默认0.25 /** * 展示时背景透明度 */ @property (nonatomic, assign) CGFloat shadeViewAlphaWhenShow; //默认0.5 /** * 头部视图背景颜色 */ @property (nonatomic, strong) UIColor *headerViewColor; // 默认白色 /** * 头部标题颜色 */ @property (nonatomic, strong) UIColor *headerTitleColor; /** * 头部标题文字 */ @property (nonatomic, copy) NSString *headerTitle; /** * 头部标题字体 */ @property (nonatomic, strong) UIFont *headerTitleFont; /** * 确定按钮颜色 */ @property (nonatomic, strong) UIColor *doneButtonColor; /** * 确定按钮文字 */ @property (nonatomic, copy) NSString *doneButtonTitle; /** * 确定按钮字体 */ @property (nonatomic, strong) UIFont *doneButtonFont; /** * 取消按钮颜色 */ @property (nonatomic, strong) UIColor *cancelButtonColor; /** * 取消按钮文字 */ @property (nonatomic, copy) NSString *cancelButtonTitle; /** * 取消按钮字体 */ @property (nonatomic, strong) UIFont *cancelButtonFont; /** * 年-月-日-时-分 单位文字颜色(默认橙色) */ @property (nonatomic, strong) UIColor *dateUnitLabelColor; /** * 年-月-日-时-分 单位文字字体(默认 [UIFont systemFontOfSize:15]) */ @property (nonatomic, strong) UIFont *dateUnitLabelFont; /** * 滚轮日期选中颜色(默认橙色) */ @property (nonatomic, strong) UIColor *datePickerSelectColor; /** * 滚轮日期选中字体 */ @property (nonatomic, strong) UIFont *datePickerSelectFont; /** * 滚轮日期颜色(默认黑色) */ @property (nonatomic, strong) UIColor *datePickerColor; /** * 滚轮日期字体 */ @property (nonatomic, strong) UIFont *datePickerFont; /** * 限制最大时间(默认2099)datePicker大于最大日期则滚动回最大限制日期 */ @property (nonatomic, strong) NSDate *maxLimitDate; /** * 限制最小时间(默认0) datePicker小于最小日期则滚动回最小限制日期 */ @property (nonatomic, strong) NSDate *minLimitDate; /** * 大号年份字体颜色(默认灰色)想隐藏可以设置为clearColor */ @property (nonatomic, strong) UIColor *yearLabelColor; /** * 隐藏每行年月日文字 */ @property (nonatomic, assign) BOOL hideDateNameLabel; /** * 隐藏每行分割线 */ @property (nonatomic, assign) BOOL hideSegmentedLine; /** * 隐藏背景年份文字 */ @property (nonatomic, assign) BOOL hideBackgroundYearLabel; /** * 头部按钮视图高度 */ @property (nonatomic, assign) CGFloat topViewHeight; // 默认44 /** * 选择器部分视图高度 */ @property (nonatomic, assign) CGFloat pickerViewHeight; // 默认200 /** * 选择器每行高度 */ @property (nonatomic, assign) CGFloat pickerRowHeight; // 默认44 ``` * example【示例】 ``` #pragma mark - 年-月-日-时-分-秒 - (void)showYearMonthDayHourMinuteSecond:(NSIndexPath *)indexPath { CXDatePickerView *datepicker = [[CXDatePickerView alloc] initWithDateStyle:CXDateYearMonthDayHourMinuteSecond completeBlock:^(NSDate *selectDate) { NSString *dateString = [selectDate cx_stringWithFormat:@"yyyy-MM-dd HH:mm:ss"]; NSLog(@"选择的日期:%@",dateString); self.examples[indexPath.row].title = dateString; [self.tableView reloadData]; }]; datepicker.dateUnitLabelColor = [UIColor orangeColor];//年-月-日-时-分-秒 颜色 datepicker.datePickerColor = [UIColor blackColor];//滚轮日期颜色 datepicker.headerViewColor = [UIColor orangeColor]; // 顶部视图背景颜色 datepicker.doneButtonColor = [UIColor whiteColor]; // 确认按钮字体颜色 datepicker.cancelButtonColor = [UIColor whiteColor]; // 取消按钮颜色 datepicker.shadeViewAlphaWhenShow = 0.25; datepicker.headerTitle = @"选择日期"; datepicker.headerTitleColor = [UIColor whiteColor]; datepicker.minLimitDate = [NSDate cx_date:@"2019-12-1 12:45:00" WithFormat:@"yyyy-MM-dd HH:mm:ss"]; datepicker.maxLimitDate = [NSDate cx_date:@"2022-12-26 12:45:00" WithFormat:@"yyyy-MM-dd HH:mm:ss"]; datepicker.datePickerSelectColor = [UIColor orangeColor]; datepicker.datePickerSelectFont = [UIFont systemFontOfSize:17]; [datepicker show]; } ```