0

我需要开会。我找不到关于这个问题的任何东西。因此我使用了 appdelegate 全局变量,但 app 全局变量不能长时间保存值。

我的意思是,我的目标是登录页面。我不希望用户在我的应用程序中多次登录。我怎样才能实现这种方法?

4

4 回答 4

1

您可以检查 NSUserDefaults

 NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];

    if(![defaults boolForKey:@"login"])
     {
         /// view to login or signup what ever
     }
     else
     {
         /// user already logged in
     }
于 2013-06-10T12:55:21.963 回答
1

您必须使用 NSUserDefault 来登录窗口。

NSUserDefaults def=[NSUserDefaults standardUserDefaults];
[def setObject:delegate.txtfield1.text forKey:@"UserName"];
[def setObject:delegate.txtfield2.text forKey:@"Password"];
[def synchronize];

如果要检索使用此代码的 NSUSERDefault 数据。

NSString *UserName=[defaults objectForKey:@"UserName"] ;
NSString *Password=[defaults objectForKey:@"Password"] ;

并用于检查状态

if(![def boolForKey:@"UserName"])
 {

 }
 else
 {

 }

试试这个可能对你有帮助......

于 2013-06-10T13:02:52.763 回答
1

将数据保存在 NSUserDefaults 中,

NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
    [defaults setObject:username forKey:@"username"];
    [defaults synchronize];

    NSString *username=[defaults objectForKey:@"username"] ;
于 2013-06-10T12:56:02.373 回答
1

您可以为此目的使用 NSUserDefaults。这是给你的一个例子。祝你好运!

- (void) createSession:(NSObject *anyObject) {
    //write an object to NSUserDefaults with the key of "session"
    [[NSUserDefaults standardUserDefaults] setObject:anyObject forKey:@"session"];

    //persist the value in the store
    [[NSUserDefaults standardUserDefaults] synchronize];
}

- (NSObject*) getSession {
    //get an object from NSUserDefaults with the key of "session"
    return [[NSUserDefaults] standardUserDefaults] objectForKey:@"session"];
}

- (void) exampleUsage {
    NSObject* mySessionObject = [self getSession];
    if (mySessionObject != nil) {
        //i have a session
    } else {
        //i do NOT have a session
    }
}
于 2013-06-10T12:58:07.743 回答