Фактически используя UIDatePickerModeCountDownTimer в качестве таймера

Я просто пытаюсь сделать таймер. Я хотел бы использовать режим UIDatePickerModeCountDownTimer для UIDatePicker, чтобы когда пользователь просто выбирает, скажем, 15 минут в средстве выбора, они возвращаются обратно на экран, который показывает значение 15 минут в метке, с которой они могут затем отсчитывать.

Когда я попытался получить значение от DatePicker, я понял, что сборщик возвращает NSTimeInterval, который получает текущее время в секундах:

UIDatePicker *pickerView = [[UIDatePicker alloc] init];
NSTimeInterval new = (NSTimeInterval)pickerView.countDownDuration;

Поэтому все, что мне нужно, это знать значение, выбранное пользователем, а не текущее время в секундах.

Я пытаюсь передать эти данные обратно из DatePicker, который представлен в _5 _... какие-либо мысли о том, что происходит или что я делаю не так?

Я просто хочу таймер !!!!!!!


person Jerry    schedule 16.09.2010    source источник


Ответы (1)


В вашем коде отсутствует строка, вы должны установить режим для своего UIDatePicker. Полный код должен быть:

UIDatePicker *pickerView = [[UIDatePicker alloc] init];
pickerView.datePickerMode = UIDatePickerModeCountDownTimer;

// please DON'T use new because it is objc syntax
NSTimeInterval timeInterval = (NSTimeInterval)pickerView.countDownDuration;

а затем, если вы не знаете, как преобразовать NSTimeInterval (секунды) в минуты, вы можете использовать этот вопрос

person vodkhang    schedule 16.09.2010
comment
new - это не синтаксис в objc, хотя он есть в C ++ и ObjC ++ - person jer; 16.09.2010
comment
Согласно справочнику Apple NSObject, это синтаксис objc: developer.apple.com/library/ios/#documentation/cocoa/reference/ - person vodkhang; 16.09.2010
comment
Этот метод представляет собой комбинацию alloc и init. Как и alloc, он инициализирует переменную экземпляра isa нового объекта, чтобы она указывала на структуру данных класса. Затем он вызывает метод init для завершения процесса инициализации. - person vodkhang; 16.09.2010