@interface ViewController : UIViewController
<UIPickerViewDelegate,UIPickerViewDataSource>
@property (nonatomic) IBOutlet UITextField * username;
@property (nonatomic) IBOutlet UIPickerView * job;
@property (nonatomic) IBOutlet UISwitch * maritalStatus;
@property (nonatomic) IBOutlet UISlider * mentalState;
@implementation ViewController
{
NSMutableArray * jobTitles;
NSMutableArray * jobValues;
NSString * selectJob;
}
@synthesize username;
@synthesize job;
@synthesize maritalStatus;
@synthesize mentalState;
-(void) initJobs
{
jobTitles = [[NSMutableArrayalloc]init];
[jobTitlesaddObject:@"学生"];
[jobTitlesaddObject:@"教师"];
[jobTitlesaddObject:@"其他"];
jobValues = [[NSMutableArrayalloc]init];
[jobValuesaddObject:@"student"];
[jobValuesaddObject:@"teacher"];
[jobValuesaddObject:@"other"];
}
-(void) loadSettings
{
NSUserDefaults * defaults = [NSUserDefaultsstandardUserDefaults];
//设置页面上的textField
username.text = [defaultsstringForKey:@"username"];
//设置页面上的控件pickerView
selectJob = [NSStringstringWithString:[defaults stringForKey:@"job"]];
int seIndex = [jobValuesindexOfObject:selectJob];
[jobselectRow:seIndex inComponent:0animated:YES];
//设置页面上的结婚状态
[maritalStatussetOn:[defaults boolForKey:@"maritalStatus"]animated:YES];
//设置页面上的精神状态
[mentalStatesetValue:[defaults integerForKey:@"mentalState"]animated:YES];
}
-(void) saveSettings
{
NSUserDefaults * defaults = [NSUserDefaultsstandardUserDefaults];
//保存用户名到设置中心
[defaultssetObject:username.textforKey:@"username"];
//保存工作到设置中心
int selIdx = [jobselectedRowInComponent:0];//selectedRowInComponent返回下标为0的componet的当前的行的下标由于本程序只有1个component,所以是0
id val = [jobValuesobjectAtIndex:selIdx] ;
[defaultssetObject:val forKey:@"job"];
//保存婚姻状况到设置中心
[defaultssetBool:maritalStatus.onforKey:@"maritalStatus"];
//保存精神状态到设置中心
[defaultssetInteger:mentalState.valueforKey:@"mentalState"];
}