日期選擇器,支援年、年月、年月日、年月日時分、年月日時分秒、時分、時分秒、月日周 時分等,內建了3種樣式。
由於使用UIPickerView的話,列表會有個弧度,所以這裡用了PGPickerView
樣式1
樣式2
樣式3
只顯示中間的文字,設定
middleText
為true
即可,預設是false
年份
年月
年月日
年月日時分
年月日時分秒
時分
時分秒
月日周時分
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];
複製程式碼