一千萬個為什麽

搜索

如何在UIDatePickerModeCountDownTimer模式下獲得UIDatePicker的時間間隔?

我有一個帶有 UIDatePicker datePicker屬性的 UIViewController 。我已經在界面生成器中配置了它,在“定時器”模式下有一個 UIDatePicker ,並在“Value Changed”事件時調用視圖控制器的 datePickerValueDidChange:方法發生。視圖控制器中的代碼如下所示:

- (void) viewWillAppear:(BOOL)animated {
  NSLog(@"datePicker: %@", datePicker);
  NSLog(@"datePicker.datePickerMode: %d", datePicker.datePickerMode);
}

當視圖加載時,您可以在日誌中看到它

datePicker: >
datePicker.datePickerMode: 3

這意味著日期選擇器被初始化,模式是 UIDatePickerModeCountDownTimer 。當我通過移動其中一個滾輪改變數值時,它會調用這個方法:

- (IBAction) datePickerValueDidChange:(id)sender {
  NSLog(@"datePicker.countDownDuration: %@", datePicker.countDownDuration);
}

日誌中的輸出是:

datePicker.countDownDuration: (null)

為什麽它是空的?這不是獲得用戶選擇的小時/分鐘值的方式嗎?如果不是,你怎麽能得到這些價值?

最佳答案

countDownDuration是一個NSTimeInterval(真的是雙精度)。要打印出來,您需要使用

NSLog(@"datePicker.countDownDuration: %f", datePicker.countDownDuration);

轉載註明原文: 如何在UIDatePickerModeCountDownTimer模式下獲得UIDatePicker的時間間隔?