Как я могу сохранить выбор строк UIPickerView

У меня есть UIPickerView с двумя компонентами. Я хотел бы сохранить выбор пользователя для компонентов. Как я могу это сделать? Я пробовал с NSUserDefaults, но это не помогло.

Спасибо!


person Community    schedule 16.08.2010    source источник
comment
Почему NSUserDefaults не помогло? Вы не смогли заставить его работать или он не соответствовал вашим требованиям?   -  person Justin    schedule 16.08.2010
comment
Я использовал эти настройки для сохранения: NSUserDefaults *pickerViewSelectionDefaults = [NSUserDefaults standardUserDefaults]; [pickerViewSelectionDefaults setInteger:строка forKey:@pickerViewSelectionKey]; [pickerViewSelectionDefaults синхронизировать]; и эти настройки для загрузки: NSUserDefaults *pickerViewSelectionDefaults = [NSUserDefaults standardUserDefaults]; [pickerView selectRow: [pickerViewSelectionDefaults integerForKey: @pickerViewSelectionKey] inComponent: 0 анимированный: YES];   -  person    schedule 16.08.2010
comment
Гай Дор: Я настоятельно рекомендую определить макрос для каждой из ваших клавиш по умолчанию. Наличие опечатки в одном экземпляре одного из них сведет вас с ума.   -  person Peter Hosey    schedule 17.08.2010


Ответы (1)


Я использую didSelectRow. Я создаю UILabel и пишу туда текст из сборщика. array1, array2 — NSmutableArray с текстом из компонентов.

-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
    selection[component] = row;
        [self updateText];
}

-(void)updateText 
{
label.text = [ NSString stringWithFormat:@"%@%@ g/L", [array1 objectAtIndex:selection[0]], [array2 objectAtIndex:selection[1]] ];
}
person Julia Kiseleva    schedule 25.11.2010