2013-06-27 28 views
6

私は自分のiPhoneアプリでアラーム機能を使用しています.UISスイッチの状態を「ON」にしてDatePickerから特定の時間を選択すると、ユーザーはuiswitchの状態をoffに変更しますdatePickerは選択された時刻を表示し、状態がoffに変更されると、日付ピッカーは以前選択された時刻ではなく現在の時刻を表示する必要があります。datepickersの時刻値をプログラムで現在の時刻に設定するオプションは見つかりません。 。プログラムでDatePicker時間を現在の時間に設定する

+0

ルック'UIDatePicker'の – rmaddy

答えて

15

setDate:方法は、特定の日付

[yourDatePicker setDate:[NSDate date]]; 

を設定するために使用されることはピッカーを設定します日付と時刻を現在の日付と時刻に変換します。

2

スウィフトで

ViewController.h

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

@end 

ViewController.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]]; 
    } 
} 
1

、これを試してみてください: `date`プロパティのドキュメントで

yourDatePicker.setDate(date: NSDate, animated: Bool) 
+0

Swift 4.0:yourDatePicker.setDate(Date()、animated:true) –

関連する問題