如何将UIPickerView的第二行保存到NSUserDefaults?

我有两行pickerView,我需要保存两个NSUserDefaults的位置。 我用这段代码成功保存了第一行:

- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component { NSInteger selectedRow = [thePickerView selectedRowInComponent:0]; [[NSUserDefaults standardUserDefaults] setInteger:selectedRow forKey:@"picker"]; } 

而我不知道如何添加第二个。

有了这个代码,我带回了这个位置:

 -(void)viewWillAppear: (BOOL) animated { NSUserDefaults *pickerViewSelectionDefaults = [NSUserDefaults standardUserDefaults]; [picker selectRow:[pickerViewSelectionDefaults integerForKey:@"picker"] inComponent:0 animated:YES]; [picker selectRow:[pickerViewSelectionDefaults integerForKey:@"picker"] inComponent:1 animated:YES]; } 

尝试这个:

 - (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component { NSInteger selectedRow = [thePickerView selectedRowInComponent:component]; NSString *key = [NSString stringWithFormat:@"picker%d", component]; [[NSUserDefaults standardUserDefaults] setInteger:selectedRow forKey:key]; } 

和这个

 -(void)viewWillAppear: (BOOL) animated { NSUserDefaults *pickerViewSelectionDefaults = [NSUserDefaults standardUserDefaults]; [picker selectRow:[pickerViewSelectionDefaults integerForKey:@"picker0"] inComponent:0 animated:YES]; [picker selectRow:[pickerViewSelectionDefaults integerForKey:@"picker1"] inComponent:1 animated:YES]; } 

添加他们与单独的密钥。

 - (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent: (NSInteger)component { NSInteger selectedRow = [thePickerView selectedRowInComponent:0]; [[NSUserDefaults standardUserDefaults] setInteger:selectedRow forKey:@"pickerRow1"]; [[NSUserDefaults standardUserDefaults] setInteger:selectedRow forKey:@"pickerRow2"]; }