NSUserDefault不加载prefs

时间:2013-12-17 02:26:48

标签: ios objective-c xcode nsuserdefaults preferences

我的课程Prefs.m有方法:

+ (void) setString:(NSString *)valor chave:(NSString *)chave{

    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];

    [prefs setObject:valor forKey:chave];

    [prefs synchronize];
}

+ (NSString *) getString:(NSString *)chave{

    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];

    NSString *valor = [prefs stringForKey:chave];

    return valor;
}

我在LoginController.m类中设置了首选项:

//Guarda informações do usuário no NSUserDefault
  [Prefs setString:strID chave:@"prefID"];
  [Prefs setString:usrNome chave:@"prefNome"];
  [Prefs setString:usrEmail chave:@"prefEmail"];

但是当我在类IndicationViewController.m中加载prefs时:

//Busca por informações do usuário se não tem o ID na prefs
 int intID = [Prefs getInteger:@"prefID"];

返回值= 0.但是在set prefs中,值为1.为什么?

1 个答案:

答案 0 :(得分:2)

改变这个:

int intID = [Prefs getInteger:@"prefID"];

对此:

int intID = [[Prefs getString:@"prefID"] intValue];

或者对此:

NSString *prefID = [Prefs getString:@"prefID"];