6

我在我的 iPhone 应用程序中使用了闹钟功能。在这里,当我将 uiswitch 的状态设置为“ON”并从 DatePicker 中选择特定时间时,直到用户将 uiswitch 的状态更改为关闭,日期选择器应显示所选时间,当状态更改为关闭时,日期选择器应显示当前时间,之前没有选择一个。我找不到以编程方式将日期选择器时间值设置为当前时间的任何选项。

4

3 回答 3

16

setDate:方法用于设置特定日期

[yourDatePicker setDate:[NSDate date]];

它将选择器日期和时间设置为当前日期和时间。

于 2013-06-27T04:07:58.080 回答
2

尝试这个,

视图控制器.h

@interface ViewController : UIViewController
{
  IBOutlet UISwitch *onOffSwitch;
  UIDatePicker *myPicker;
}
-(IBAction)onOffSwitch:(id)sender;

@end

视图控制器.m

  - (void)viewDidLoad
    {
    [super viewDidLoad];
    CGRect pickerFrame = CGRectMake(0,250,0,0);
    myPicker = [[UIDatePicker alloc] initWithFrame:pickerFrame];
    [self.view addSubview:myPicker];
    [myPicker release];
    }

    -(IBAction)onOffSwitch:(id)sender{

    if(onOffSwitch.on) {

        NSString *dateStr = @"Tue, 25 May 2010 12:53:58 +0000";
        // Convert string to date object
        NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
        [dateFormat setDateFormat:@"EE, d LLLL yyyy HH:mm:ss Z"];
        NSDate *date = [dateFormat dateFromString:dateStr];
        [myPicker setDate:date];
    }
    else 
    {
        [myPicker setDate:[NSDate date]];
    }
}
于 2013-06-27T04:42:15.790 回答
1

在斯威夫特:

yourDatePicker.setDate(date: NSDate, animated: Bool)
于 2016-04-28T21:02:41.953 回答