一, 效果图。
二,工程图。
三,代码。
RootViewController.h
#import <UIKit/UIKit.h> @interface RootViewController : UIViewController
{
UIDatePicker *datePicker;
UILabel *timeLabel;
} @end
RootViewController.m
#import "RootViewController.h" @interface RootViewController () @end @implementation RootViewController - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
} - (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view. self.title=@"timerPicker"; timeLabel=[[UILabel alloc]init];
timeLabel.backgroundColor=[UIColor redColor];
timeLabel.frame=CGRectMake(10, 100, 300, 50);
timeLabel.textAlignment=NSTextAlignmentCenter;
[self.view addSubview:timeLabel]; }
//点击任意处,弹出时间选择框
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
datePicker = [[UIDatePicker alloc]initWithFrame:CGRectMake(0, self.view.frame.size.height-216, 0, 0)];
datePicker.datePickerMode = UIDatePickerModeDateAndTime;
[datePicker addTarget:self action:@selector(dateChanged:) forControlEvents:UIControlEventValueChanged ];
[self.view addSubview:datePicker];
} //开始结束时间选择框
- (void)dateChanged:(id)sender
{
NSDate *date = datePicker.date; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd hh:mm"];
//设备默认的值
dateFormatter.locale=[NSLocale systemLocale];
//将所选择的时候转化为需要的时间格式
NSString *dateStr = [NSString stringWithFormat:@"%@",[dateFormatter stringFromDate:date]];
timeLabel.text=dateStr; //让选择完时间后,选择框,消失,这个时间可以自己调整
[UIView animateWithDuration:.5f delay:.5f options:UIViewAnimationOptionCurveEaseInOut animations:^{
[datePicker setFrame:CGRectMake(0, self.view.frame.size.height, 0, 0)];
} completion:nil];
} - (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}