ios/xcode/objective c: 设置和获取会话变量
ios/xcode/objective c: set and get session variable
这不应该那么难,但我无法让它工作。 IOS newb 尝试在 Ismael here 的回答后在会话实例中设置用户 ID。但无法访问其他 class.
中用户标识的值
这是我使用的代码:
Session.h
@interface IDSession : NSObject
@property (readonly, copy) NSString *userid;
+ (IDSession *)sharedInstance;
@end
Session.m
#import "IDSession.h"
@interface IDSession()
@property (readwrite,copy)NSString * userid;
@end
@implementation IDSession
+ (IDSession *)sharedInstance {
static IDSession *session;
if (!session){
session = [[IDSession alloc] init];
//include this class in other class and reference userid with [IDSession sharedInstance].userid
NSString * userid = @"1";
}
return session;
}
@end
in retrieving class.
#import "session.h"
NSString *userid =[Session sharedInstance].userid;
NSLog(@"userid retrieved from session variable is %@",userid);
日志中出现的值为(null)
提前感谢您的任何建议。
您设置的是本地 userid
变量,而不是单例的 属性。
而不是:
NSString *userid = @"...";
你想要:
session.userid = @"...";
这不应该那么难,但我无法让它工作。 IOS newb 尝试在 Ismael here 的回答后在会话实例中设置用户 ID。但无法访问其他 class.
中用户标识的值这是我使用的代码:
Session.h
@interface IDSession : NSObject
@property (readonly, copy) NSString *userid;
+ (IDSession *)sharedInstance;
@end
Session.m
#import "IDSession.h"
@interface IDSession()
@property (readwrite,copy)NSString * userid;
@end
@implementation IDSession
+ (IDSession *)sharedInstance {
static IDSession *session;
if (!session){
session = [[IDSession alloc] init];
//include this class in other class and reference userid with [IDSession sharedInstance].userid
NSString * userid = @"1";
}
return session;
}
@end
in retrieving class.
#import "session.h"
NSString *userid =[Session sharedInstance].userid;
NSLog(@"userid retrieved from session variable is %@",userid);
日志中出现的值为(null)
提前感谢您的任何建议。
您设置的是本地 userid
变量,而不是单例的 属性。
而不是:
NSString *userid = @"...";
你想要:
session.userid = @"...";