你需要设置pickerView的代理, 即pickerView.delegate = self, pickerView.dataSource= self
然后提供pickerView的数据源, 一个NSArray.
实现pickerView的代理方法:
numberOfComponentsInPickerView, 表示pickerView一共多少列
numberOfRowsInComponent, 表示 pickerView一共多少行
viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
表示pickerView中的每一格显示的内容
实际上它的使用方式和UITableView基本没区别
iOS上的选择时间日期的控件是这样的,左边是时间和日期混合,右边是单纯的日期模式。您可以选择自己需要的模式,Time, Date,Date and Time , Count Down Timer四种模式。
具体的步骤如下:
1.新建一个Singe View Application工程 ,拖动一个DatePicker控件 和 Button到界面。
2.然后关联Button事件(可以按住Ctrl拖动实现)
3.实现代码
- (void)viewDidLoad
{
[super viewDidLoad]
// Do any additional setup after loading the view, typically from a nib.
/*typedef enum {
UIDatePickerModeTime,
UIDatePickerModeDate,
UIDatePickerModeDateAndTime,
UIDatePickerModeCountDownTimer
} UIDatePickerMode
*/
//datePicker.datePickerMode = UIDatePickerModeDateAndTime//这儿即是改变显示的模式
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning]
// Dispose of any resources that can be recreated.
}
- (IBAction)datePick:(id)sender {
NSDate *select = [datePicker date]
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]
[dateFormatter setDateFormat:@"yy-MM-dd HH:mm:ss"]
NSString *dateAndTime = [dateFormatter stringFromDate:select]
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@" 时间提示" message: dateAndTime delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil, nil]
[alert show]
}
1.在模拟器中的“设置”-“通用”-“多语言环境”-“语言”设置为“简体中文”,“区域格式”设置为“中国”。2.添加ValueChange事件
C代码 :
- (IBAction)selectDateChange:(id)sender {
NSDate *selectedDate = [orderDatePicker date]
NSTimeZone *timeZone = [NSTimeZone timeZoneForSecondsFromGMT:3600*8]
NSDateFormatter *formatter = [[NSDateFormatter alloc] init]
[formatter setTimeZone:timeZone]
[formatter setDateFormat:@"YYYY年MM月dd日"]
NSString *dateString = [formatter stringFromDate:selectedDate]
//dateString即为中文格式
}
3.设置选择日期的范围
orderDatePicker.minimumDate=[[NSDate alloc] init]//最小日期
orderDatePicker.maximumDate=[[NSDate alloc] init]//最大日期
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)