Ios 从日期选择器中获取日期并在标签中显示
我尝试过以下代码:Ios 从日期选择器中获取日期并在标签中显示,ios,iphone,objective-c,Ios,Iphone,Objective C,我尝试过以下代码: -(IBAction)btn_strtPeriodclicked:(id)sender{ UIDatePicker *datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 250, 0, 0)]; // ... populate your date picker and format it as you see fit. [self.view addSubview:datePick
-(IBAction)btn_strtPeriodclicked:(id)sender{
UIDatePicker *datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(0, 250, 0, 0)];
// ... populate your date picker and format it as you see fit.
[self.view addSubview:datePicker];
}
pickerView显示的颜色太浅。我的问题是:
UIDatePicker
的外观[datePicker removeFromSuperview]代码>
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];
以及设置带有日期的标签:
self.dateLabel.text = [dateFormatter stringFromDate:datePicker.date];
您必须为日期选择器创建视图,并在该视图中添加日期选择器。首先,隐藏日期选择器视图的框架 首先为.h中的视图和日期选择器创建属性并与IBOutlet连接
@property (strong, nonatomic) IBOutlet UIView *datePickerView;
@property (strong, nonatomic) IBOutlet UIDatePicker *dobPicker;
和viewDIdload()删除datepickerview
-(void)viewDidLoad()
{
[self.datePickerView removeFromSuperview];
}
执行操作时,显示视图
- (IBAction)showDate
{
UIView *toView;
self.datePickerView.tag =42;
toView = self.datePickerView;
toView.frame = CGRectMake(0, 210, 320, 206);
[self.view addSubview:toView];
}
然后选择日期并将其转换为字符串以在标签中显示
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateStyle:NSDateFormatterMediumStyle];
[formatter setDateFormat:@"dd-MMM-yyyy"];
NSDate *date = [self.dobPicker date];
self.label.text = [formatter stringFromDate:birthday];
要隐藏在该datepickerview中,请添加另一个customview和自定义按钮右键隐藏datepicker操作以再次删除该视图。您的视图应该是这样的,并为“完成”按钮创建操作
- (IBAction)Done:(id)sender {
for (UIView *view in [self.view subviews])
{
if (view.tag == 42 ) {
[view removeFromSuperview];
}
}
}
如需了解更多信息,请参阅此视频我无法从选择器视图中选择日期..我无法选择日期。是否必须在此处执行触摸编码我添加了答案请检查
- (IBAction)Done:(id)sender {
for (UIView *view in [self.view subviews])
{
if (view.tag == 42 ) {
[view removeFromSuperview];
}
}
}