2010-07-15 4 views
0

я пытаюсь заполнить строки моего UIPickerView с содержанием и я пытаюсь сделать это следующим образом:UIPickerView Как заполнить на строки

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component { 
NSString *test; 

for (int i; i<5; i++) { 
     if (row == i) { 
      test = [NSString stringWithFormat:@"%i", i]; 
      return test; 
     } 


} 

return @""; 

}

Но это не отображает все чисел, а иногда они даже исчезают .... Что я делаю неправильно? я не хочу заполнять все строки вручную, потому что я собираюсь заполнить этот pickerview с помощью минут и секунд, что сделало бы это представление с 60 строками ..... Любая помощь очень удобна! Благодаря

ответ

0

Просто вернуть строку, которую вы хотите, чтобы появиться в строке:

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row 
             forComponent:(NSInteger)component { 

    return [NSString stringWithFormat:@"%d", row]; 
} 

UIPicker будет вызывать этот метод делегата только тогда, когда строка собирается отобразить.

P.S. Посмотрите на UIDatePicker - возможно, он уже делает то, что вы хотите

+0

К сожалению, UIDatePicker может отображать часы и минуты вместо секунд и минут, и я не знал, как это изменить. –