日期選擇器,支持年、年月、年月日、年月日時分、年月日時分秒、時分、時分秒、月日周 時分等,內置了3種樣式。
由于使用UIPickerView的話,列表會有個弧度,所以這里用了PGPickerView
PGDatePicker.gif
樣式1
樣式1.png
樣式2
樣式2.png
樣式3
樣式3.png
只顯示中間的文字,設置
middleText
為true
即可,默認是false
年份
年.jpg
年月
年月.jpg
年月日
年月日.jpg
年月日時分
年月日時分.jpg
年月日時分秒
年月日時分秒.jpg
時分
時分.jpg
時分秒
時分秒.jpg
月日周時分
月日周時分.jpg
GitHub地址
https://github.com/xiaozhuxiong121/PGDatePicker
Swift使用
CocoaPods安裝
pod 'PGDatePicker', '>= 1.4.5'
使用
PGDatePicker *datePicker = [[PGDatePicker alloc]init];
datePicker.delegate = self;
[datePicker show];
datePicker.datePickerMode = PGDatePickerModeYear;
#pragma PGDatePickerDelegate
- (void)datePicker:(PGDatePicker *)datePicker didSelectDate:(NSDateComponents *)dateComponents {
NSLog(@"dateComponents = %@", dateComponents);
}
如果不設置
minimumDate
和maximumDate
默認是無窮小和無窮大
設置Date
建議用NSDate+PGCategory類所定義的方法去設置
+ (NSDate *)setYear:(NSInteger)year;
+ (NSDate *)setYear:(NSInteger)year month:(NSInteger)month;
+ (NSDate *)setYear:(NSInteger)year month:(NSInteger)month day:(NSInteger)day;
+ (NSDate *)setYear:(NSInteger)year month:(NSInteger)month day:(NSInteger)day hour:(NSInteger)hour minute:(NSInteger)minute;
+ (NSDate *)setYear:(NSInteger)year month:(NSInteger)month day:(NSInteger)day hour:(NSInteger)hour minute:(NSInteger)minute second:(NSInteger)second;
+ (NSDate *)setHour:(NSInteger)hour minute:(NSInteger)minute;
+ (NSDate *)setHour:(NSInteger)hour minute:(NSInteger)minute second:(NSInteger)second;
+ (NSDate *)setMonth:(NSInteger)month day:(NSInteger)day hour:(NSInteger)hour minute:(NSInteger)minute;
比如:datePicker.maximumDate = [NSDate setYear:2017];
設置樣式
//設置線條的顏色
datePicker.lineBackgroundColor = [UIColor redColor];
//設置選中行的字體顏色
datePicker.titleColorForSelectedRow = [UIColor redColor];
//設置未選中行的字體顏色
datePicker.titleColorForOtherRow = [UIColor blackColor];
//設置取消按鈕的字體顏色
datePicker.cancelButtonTextColor = [UIColor blackColor];
//設置取消按鈕的字
datePicker.cancelButtonText = @"取消";
//設置取消按鈕的字體大小
datePicker.cancelButtonFont = [UIFont boldSystemFontOfSize:17];
//設置確定按鈕的字體顏色
datePicker.confirmButtonTextColor = [UIColor redColor];
//設置確定按鈕的字
datePicker.confirmButtonText = @"確定";
//設置確定按鈕的字體大小
datePicker.confirmButtonFont = [UIFont boldSystemFontOfSize:17];