用到时间和日期显示 、ios系统自带的UIDatePicker很好用、写了个小demo、和大家分享、直接上代码,复制粘贴就OK
{
UIDatePicker * datePicker;
}
/**
* 创建UIDatePicker
*/
- (void)loadPickerView
{
NSDate * nowdate = [NSDate date];
// 可以不用设置宽高,因为它的宽高是固定的
datePicker = [[UIDatePicker alloc] initWithFrame: CGRectMake(0, self.view.frame.size.height-216, self.view.frame.size.width, 216)];
// 设置区域为中国简体中文
datePicker.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"zh_CN"];
/*
UIDatePickerModeTime,
UIDatePickerModeDate,
UIDatePickerModeDateAndTime,
UIDatePickerModeCountDownTimer,
*/
// 设置picker的显示模式:只显示日期
datePicker.datePickerMode = UIDatePickerModeDate;
//需要监听值的改变 UIDatePicker继承与UIControl,可以使用UIControl的方法- (void)addTarget:(id)target action:(SEL)action //forControlEvents:(UIControlEvents)controlEvents获取选择的日期时间。
[datePicker addTarget:self action:@selector(dateChanged:)forControlEvents:UIControlEventValueChanged];
[self.view addSubview:datePicker];
//你可以通过设置mininumDate和 maxinumDate 属性,来指定使用的日期范围。如果用户试图滚动到超出这一范围的日期,表盘会回滚到最近的有效日期。两个方法都需要NSDate对象作参数:
//设置当前日期为最近有效期
NSDate * maxDate = nowdate;
datePicker.maximumDate = maxDate;
//你还可以用 setDate方法。如果选择了使用动画,则表盘会滚动到你指定的日期:
[datePicker setDate:maxDate animated:YES];
}
/**
* 监听滚动方法
*
* @param sender 对象
*/
- (void)dateChanged:(id)sender
{
UIDatePicker *control = (UIDatePicker *)sender;
NSDate *select = control.date;//获取当前控制器
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];//设置显示格式
NSString *dateTime = [dateFormatter stringFromDate:select];
_showlab.text = dateTime;//需要显示的地方随意
}