【问题标题】:Getting date from the label onto the datepicker从标签获取日期到日期选择器
【发布时间】:2013-12-06 10:14:49
【问题描述】:

我正在使用 UIdatepicker。我正在从日期选择器中获取时间并在标签上显示日期。一旦我选择了它显示在标签上的日期,日期选择器就会被隐藏起来。现在我希望当我调用选择器时,它应该在我之前在 datepicker 上选择的标签的日期上显示 datepicker 的选择栏。我正在使用的代码如下所示:-

-(void)datepickershown:(UILabel *)time animated:(BOOL)animated
{
    UIActionSheet *actionsheet = [[UIActionSheet alloc] initWithTitle:@"Select the Time" delegate:self cancelButtonTitle:nil destructiveButtonTitle:@"DONE" otherButtonTitles:Nil, nil];
    pickdate = [[UIDatePicker alloc] initWithFrame:[actionsheet bounds]];
    pickdate.hidden = NO;
    //pickdate.date = [NSDate date];
    pickdate.datePickerMode = UIDatePickerModeTime;
    [pickdate addTarget:self action:@selector(changeDateInLabel:) forControlEvents:UIControlEventValueChanged];
    [actionsheet addSubview:pickdate];
    [actionsheet showInView:self.view];
    [actionsheet setBounds:CGRectMake(0,0,320, 500)];
    CGRect pickerRect = pickdate.bounds;
    pickerRect.origin.y = -90;
    pickdate.bounds = pickerRect;
}    

- (IBAction)changeDateInLabel:(id)sender
{
    NSLog(@"I Am Changing the values");
    df = [[NSDateFormatter alloc] init];
    df.timeStyle = NSDateFormatterShortStyle;
}

【问题讨论】:

  • 请详细说明:'现在我希望当我调用选择器时,它应该在我之前在日期选择器上选择的标签的日期显示日期选择器的选择栏。'跨度>
  • 我正在添加带有描述的图像,请看看希望你能理解。
  • sry 我添加了图像因为声誉..
  • 其实我想要的是,我从 datepicker 设置标签上的时间。一旦我选择了时间和日期选择器关闭,然后我发现我选择的时间是错误的,现在我再次打电话让选择器出现。现在我希望选择器显示我之前选择的日期。但它向我显示了当前日期。

标签: ios iphone datepicker


【解决方案1】:

因为您希望日期选择器显示您已经在标签上设置的日期。

为此,您需要使用以下方法。

- (void)setDate:(NSDate *)date animated:(BOOL)animated

传递您选择并显示在标签中的日期。

【讨论】:

  • 您是否提供当前日期?
  • 实际上我获取的是时间而不是日期......我没有向它提供当前日期......
  • 那么它将从哪里显示日期?您需要在某个地方存储和传递日期。
【解决方案2】:

试试这个

   [self.datePicker setDatePickerMode:UIDatePickerModeDate];

    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
   [dateFormat setDateFormat:@"dd-MM-yyyy"];
   if([dateFormat dateFromString:yourDateLabel.text])
   {
      NSDate *date = [dateFormat dateFromString:yourDateLabel.text];
      [self.datePicker setDate:date];
   }

希望这会奏效

【讨论】:

    猜你喜欢
    • 2012-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多