UIPicker - проблема начальных значений - PullRequest
1 голос
/ 23 сентября 2010

У меня есть UIPicker с 3 компонентами, содержащими числовые значения, это позволяет пользователю устанавливать время в формате чч: мм: сс.Если я выберу час из первого компонента, мой UITextField будет выглядеть так: 10: (null) :( null).(Нуль) может быть удален, когда пользователь выбирает соответствующие мм и сс.Но если пользователь просто хочет ввести 10 часов, я хочу, чтобы другие значения были 00 вместо (ноль) без необходимости физического перемещения компонентов средства выбора.

У кого-нибудь есть какие-нибудь идеи по этому поводу?

Ниже приведен код, связанный с timePicker.

1 Ответ

1 голос
/ 27 сентября 2010

Мне кажется эта строка:

time.text = [NSString stringWithFormat:@"%@:%@:%@", selectedHour, selectedMinute, selectedSecond];

может быть изменено на:

time.text = [NSString stringWithFormat:@"%@:%@:%@",
             (selectedHour ? selectedHour : @"00"),
             (selectedMinute ? selectedMinute : @"00"),
             (selectedSecond ? selectedSecond : @"00")];

Предполагается, что selectedHour, selectedMinute и selectedSecond все изначально nil вне этого кода. Я вдали от своего Mac, поэтому я не проверял это.

Кроме того, вы можете инициализировать selectedHour, selectedMinute и selectedSecond до @"00".

...