我需要会话。我找不到关于这个问题的任何事情。因此我使用appdelegate全局变量,但app全局变量不能长时间保存值。
我的意思是,我的目标是登录页面。我不希望用户在我的应用中多次登录。我怎样才能实现这种方法?
答案 0 :(得分:1)
您可以查看NSUserDefaults
NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
if(![defaults boolForKey:@"login"])
{
/// view to login or signup what ever
}
else
{
/// user already logged in
}
答案 1 :(得分:1)
将数据保存在NSUserDefaults中,
NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
[defaults setObject:username forKey:@"username"];
[defaults synchronize];
NSString *username=[defaults objectForKey:@"username"] ;
答案 2 :(得分: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
}
}
答案 3 :(得分: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
{
}
试试这个可能对你有帮助......