对于我的应用程序,我尝试在单击名为time的文本字段时显示UIDatePicker。
在我的viewDidLoad中,我这样初始化它:
- (void)viewDidLoad {
time.delegate = self;
[time setValue:[UIColor darkGrayColor] forKeyPath:@"_placeholderLabel.textColor"];
datepicker = [[UIDatePicker alloc] init];
datepicker.datePickerMode = UIDatePickerModeCountDownTimer;
dateformatter= [[NSDateFormatter alloc] init];
[dateformatter setDateFormat:@"HH:mm:ss"];
}
然后,在textFieldShouldBeginEditing方法中,我有如下代码:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
if (textField == time){
button.hidden = NO;
datepicker.hidden = NO;
}
return NO;
}
但是,我的UIDatePicker仍然处于隐藏状态,而且我确信插座是连接的
发布于 2013-07-16 14:44:21
从您的代码中删除此行并检查您的选择器是否放置在Xib中。
datepicker = [[UIDatePicker alloc] init];
发布于 2013-07-16 14:44:07
在textFieldShouldBeginEditing中,你需要根据需要设置框架,然后你必须在视图中添加日期选择器。例如
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
if (textField == _time){
CGRect frame = datepicker.frame;
frame.origin.x = 100(for eg,set according to you);
frame.origin.y = 100(for eg,set according to you);
datepicker.frame = frame;
[self.view addSubview:datepicker];
button.hidden = NO;
datepicker.hidden = NO;
}
return NO;
}
完成此操作后,将其删除。
https://stackoverflow.com/questions/17669562
复制相似问题