您的位置:首页 > 编程语言

【代码笔记】时间选择框

2016-02-26 09:55 232 查看
一, 效果图。





二,工程图。





三,代码。

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.
}


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: