、、、、、、、、、、、、、、、、、、首先 定义   UserInfo

#import <Foundation/Foundation.h>

@interface UserInfo : NSObject

//用户id

@property (nonatomic, strong) NSString *userID;

//用户名

@property (nonatomic, strong) NSString *userName;

//密码

@property (nonatomic, strong) NSString *userPassword;

//昵称

@property (nonatomic, strong) NSString *userNickName;

//用户头像

@property (nonatomic, strong) NSString *HeadImg;

//注册日期

@property (nonatomic, strong) NSString *createTime;

-(id)initWithDictionary:(NSDictionary *)dic;

@end

#import "UserInfo.h"

@implementation UserInfo

- (id)init {

if (self = [super init]) {

self.userID       = @"";

self.userName     = @"";

self.userPassword = @"";

self.userNickName = @"";

self.HeadImg      = @"";

self.createTime   = @"";

}

return self;

}

- (id)initWithDictionary:(NSDictionary *)dic {

if (self = [super init]) {

self.userID       = dic[@"userID"];

self.userName     = dic[@"userName"];

self.userPassword = dic[@"userPassword"];

self.userNickName = dic[@"userNickName"];

self.HeadImg      = dic[@"HeadImg"];

self.createTime   = dic[@"createTime"];

}

return self;

}

- (NSString *)description {

return [NSString stringWithFormat:@"userID:%@,userName:%@,userPassword:%@,userNickName:%@,HeadImg:%@,createTime:%@",self.userID,self.userName,self.userPassword,self.userNickName,self.HeadImg,self.createTime];

}

-(void)encodeWithCoder:(NSCoder *)aCoder{

[self yy_modelEncodeWithCoder:aCoder];

}

-(id)initWithCoder:(NSCoder *)aDecoder{

self = [super init];

return [self yy_modelInitWithCoder:aDecoder];

}

@end

、、、、、、、、、、、、、定义  UserManager

#import <Foundation/Foundation.h>

#import "UserInfo.h"

@interface UserManager : NSObject

@property (nonatomic, strong) UserInfo *userInfo;

//判断是否是登录状态

+(BOOL)isLogin;

//储存用户信息

+(void)saveUserObject:(UserInfo *)userinfo;

//获取用户基本信息

+(UserInfo *)getUserObject;

//退出登录,清除用户信息

+(void)logoOut;

@end

#import "UserManager.h"

@implementation UserManager

+ (BOOL)isLogin {

BOOL loginState;

NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

NSData *data = [userDefault objectForKey:@"1userObject"];

if (data.length > 0) {

loginState = YES;

}else{

loginState = NO;

}

return loginState;

}

+(void)saveUserObject:(UserInfo *)userinfo{

NSData *data = [NSKeyedArchiver archivedDataWithRootObject:userinfo];

NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

[userDefault setObject:data forKey:[NSString stringWithFormat:@"%@userObject",@"1"]];

}

+(UserInfo *)getUserObject{

NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

NSData *data = [userDefault objectForKey:@"1userObject"];

return [NSKeyedUnarchiver unarchiveObjectWithData:data ];

}

+(void)logoOut{

[[NSUserDefaults standardUserDefaults] removeObjectForKey:@"1userObject"];

}

@end

、、、、、是否登录判断

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

if (![UserManager isLogin]) {

LoginViewController *vc = [[LoginViewController alloc] init];

UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc];

self.window.rootViewController= nav;

} else {

NSLog(@"%@",[UserManager getUserObject]);

UserInfo *userInfo = [UserManager getUserObject];

NSLog(@"%@",userInfo);

NSLog(@"zzzzz%@",userInfo.userName);

MainTabBarController *tabBar = [[MainTabBarController alloc] init];

self.window.rootViewController = tabBar;

}

return YES;

}

、、、、、、、、、、、添加用户信息到本地设置

if ([str isEqualToString:@"101"]) {

[SVProgressHUD showInfoWithStatus:@"登录成功"];

for (NSDictionary *dic in [responseObject objectForKey:@"data"]) {

UserInfo *userInfo = [[UserInfo alloc] init];

userInfo.userID = [dic objectForKey:@"id"];

userInfo.userName = [dic objectForKey:@"username"];

userInfo.userPassword = [dic objectForKey:@"password"];

userInfo.HeadImg = [dic objectForKey:@"headimg"];

[UserManager saveUserObject:userInfo];

NSLog(@"id%@",userInfo.userID);

NSLog(@"username%@",userInfo.userName);

NSLog(@"password%@",userInfo.userPassword);

NSLog(@"headimg%@",userInfo.HeadImg);

}

UIWindow *window = [[UIApplication sharedApplication] keyWindow];

MainTabBarController *VC = [MainTabBarController alloc];

window.rootViewController = VC;

} else {

[SVProgressHUD showErrorWithStatus:[responseObject objectForKey:@"msg"]];

}

iOS 储存用户信息设置封装 直接调用即可(部分是代码片段)相关推荐

  1. java程序实现wifi连接打印_Android下通过wifi调用打印机打印,Java代码片段分享,

    Android下通过wifi调用打印机打印 chongq 分享于 2小时前 4972阅 0人收藏此代码, 好图网图标搜索引擎,提供超过60万的免费图标.PNG图标.ICO图标.ICNS图标.网页图标 ...

  2. Python工厂模式封装各类Webhook群聊机器人代码片段

    引言 企业存在给 特定群组 自动推送消息的需求,比如:监控报警推送.销售线索推送.运营内容推送等. 你可以在群聊中添加一个自定义机器人,通过服务端调用 webhook 地址,即可将外部系统的通知消息即 ...

  3. 浙里办开发票据认证单点登陆、令牌获取用户信息

    浙里办开发票据认证单点登陆.令牌获取用户信息(JAVA后端处理)   最近在搞浙里办开发,周边的人里都没人接触过,以至于自己摸索搞起来比较心累.浙里办单点登陆需要在IRS上走申请,审核流程通过后,和指 ...

  4. springcloudalibaba架构(31):SpringCloud实现用户信息在微服务之间传递(Feign和Dubbo)

    文章目录 前言 第一节 微服务间用户信息传递问题 第二节 解决思路 第三节 实践操作(基于Feign) 1. 调用链路说明 2. shop-common改造 3. 开启注解 4. 启动服务器测试 第四 ...

  5. 微服务间用户信息共享机制

    文章目录 前言 第一节 微服务间用户信息传递问题 第二节 解决思路 第三节 实践操作(基于Feign) 1. 调用链路说明 2. shop-common改造 3. 开启注解 4. 启动服务器测试 第四 ...

  6. php获取公众号微信用户信息

    error_reporting(1); header('Content-type:text/html; Charset=utf-8'); /* 配置开始 */ $appid = ''; //微信公众平 ...

  7. 登录页面设置cookie,用户登录后,创建cookie保存用户信息

    代码要求: 用户登录后,创建cookie保存用户信息 设置cookie的有效期为5分钟 在登录页循环遍历cookie数组,判断是否存在指定名称的cookie,若存在则直接跳转至欢迎页面 代码实现过程: ...

  8. 把数据保存到cook_将用户信息保存到Cookie中

    /** * 把用户保存到Cookie * * @param request * @param response * @param member */ private void rememberPwdA ...

  9. php微信小程序获取用户信息,微信小程序获取openid及用户信息的方法

    本文主要介绍微信小程序如何获取openid及用户信息,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家. 1. 获取openid 1.1 获取code 调用接口获取登录凭证(code ...

最新文章

  1. tomcat常用的优化和配置
  2. Java学习之Iterator(迭代器)的一般用法(转)
  3. Sphinx 文档例子
  4. 天天早上慢跑一小时对身体好吗?
  5. python3 ftplib_python3从零学习-5.10.9、ftplib—FTP 协议客户端
  6. rhel6.3搭建iscsi-target服务器实战
  7. [Js-Java SE]文件/文件夹复制(递归)
  8. [导入]意外的,博客被点名了。参与游戏吧。
  9. html按钮调用php函数,如何在html按钮上执行php函数点击
  10. 【信息学奥赛一本通】题解目录
  11. Linux系统在Xshell6布置定时任务
  12. JAVA_OPTS参数说明与配置
  13. 遇到问题--python--BLOB/TEXT column 'code' used in key specification without a key length
  14. 长链亲脂性二烷基碳菁类染料DiR iodide,DiR细胞膜染料,100068-60-8
  15. 二补数(2’scomplement)乘法算法及其Verilog实现 - 固定系数h
  16. 网络工程师学习笔记——RIP路由汇总实验配置精讲
  17. JPEG图像压缩详解
  18. UNR #1 火车管理
  19. Ip-adress.com:国际IP地址查询工具
  20. 初识ollvm控制流平坦化

热门文章

  1. 一些实用的 Javascript 代码
  2. Linux下通过gettimeofday函数获取程序段执行时间
  3. joc杂志影响因子2019_2019年放射学领域SCI主要杂志影响因子汇总
  4. 怎么在PHP植入音乐,PHP网站插入音乐
  5. 面向对象设计原则_聊聊面向对象的6大设计原则
  6. 接口是什么意思_程序员天天用却不懂得冷知识,这两句口诀,让你理解RESTful接口...
  7. 设计模式学习2:单例模式
  8. 编写纳新网站后端的相关知识总结
  9. 职校中的计算机学的是什么,职校计算机专业主要学什么课
  10. 军用软件概算计价规范_工程造价五算:估算、概算、预算、结算、决算