IOS NSUserDefault 记住用户名及密码功能的实例代码

 更新时间:2017年09月01日 08:35:04   作者:下一站ssh  
这篇文章主要介绍了IOS NSUserDefault 记住用户名及密码功能的实现代码,需要的朋友可以参考下

一般的登录界面都会有一个记住密码的选项,要实现这个功能可以使用NSUserDefault,这里只是讲解明文的处理方式,虽然这样是有一定的风险性的但是目前只是了解如何实现这个功能:

首先声明一个NSUserDefault对象:

let userDefaults = NSUserDefaults.standardUserDefaults()  //本地操作所需

然后根据是否记住密码按钮的状态来判断是否要为用户名和密码设置值,如果是记住密码,那么需要取出需要记住的密码,并且为这两个TextField赋值。

在viewDidLoad方法中添加如下代码:

///检查记住密码标记,如果为YES,那么就读取用户名和密码并为TextField赋值 
    ///并将图标背景设置为记住状态,如果为NO,那么设置背景为未记住状态 
    if(userDefaults.boolForKey("isRememberPsd")) 
    { 
      userDefaults.setBool(true, forKey: "isRememberPsd") 
      isRemberPW.setBackgroundImage(UIImage(named: "pwd_checked.png"), forState: .Normal) 
      self.UserName.text = userDefaults.stringForKey("userName") 
      self.PassWord.text = userDefaults.stringForKey("userPsw") 
    }else if(!userDefaults.boolForKey("isRememberPsd")) 
    { 
      userDefaults.setBool(false, forKey: "isRememberPsd") 
      self.isRemberPW.setBackgroundImage(UIImage(named:"pwd_unchecked.png"), forState: .Normal) 
    } 

在登录按钮的点击事件中添加如下代码:

if(userDefaults.boolForKey("isRememberPsd")) 
    { 
      userDefaults.setValue(userName, forKey: "userName") 
      userDefaults.setValue(userPsw, forKey: "userPsw") 
    } 

如果为记住密码的状态,那登录前需要将用户名和密码写入到本地。

记住密码按钮的点击事件的处理:

//读取本地的key为“isRememberPsd”的状态,YES代表记住密码,NO代表不记住 
    ///如果YES,再次点击就需要将图片设置为未记住的样式并改变key的值。 
    if(userDefaults.boolForKey("isRememberPsd")) 
    { 
      self.isRemberPW.setBackgroundImage(UIImage(named:"pwd_unchecked.png"), forState: .Normal) 
      userDefaults.setBool(false, forKey: "isRememberPsd") 
    } 
    else 
    { 
      self.isRemberPW.setBackgroundImage(UIImage(named:"pwd_checked.png"), forState: .Normal) 
      userDefaults.setBool(true, forKey: "isRememberPsd") 
    } 
    userDefaults.synchronize() 

这样一个基本的记住密码,并且再下次登录时会自动的为其写入用户名和密码的功能就实现了

总结

以上所述是小编给大家介绍的IOS NSUserDefault 记住用户名及密码功能的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • IOS 中弹框的实现方法整理

    IOS 中弹框的实现方法整理

    这篇文章主要介绍了IOS 中弹框的实现方法整理的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09
  • iOS实现带指引线的饼状图效果(不会重叠)

    iOS实现带指引线的饼状图效果(不会重叠)

    饼状图对大家来说应该都不陌生,下面这篇文章主要给大家介绍了关于iOS实现带指引线的饼状图效果(不会重叠)的相关资料,文章通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2018-04-04
  • 解决苹果ios用js的Date()出现NaN的问题

    解决苹果ios用js的Date()出现NaN的问题

    下面小编就为大家分享一篇解决苹果ios用js的Date()出现NaN的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • iOS 获得现在的时间代码

    iOS 获得现在的时间代码

    本文通过实例代码给大家介绍了iOS 获得现在的时间的方法,代码简单易懂,非常不错,具有参考借鉴价值,需要的的朋友参考下吧
    2017-06-06
  • iOS开发之路--微博新特性页面

    iOS开发之路--微博新特性页面

    本文是IOS开发之路系列的第三篇,主要是分享了微博新特性页面的制作源码,希望对大家有所帮助
    2014-08-08
  • iOS block循环引用详解及常见误区

    iOS block循环引用详解及常见误区

    这篇文章主要介绍了iOS block循环引用详解和应用,常见误区详解,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2021-08-08
  • iOS Xcode升级Xcode15报错SDK does not contain 'libarclite'

    iOS Xcode升级Xcode15报错SDK does not contain

    这篇文章主要为大家介绍了iOS Xcode 升级Xcode15报错: SDK does not contain 'libarclite'解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • iOS如何获取最顶层ViewController详解

    iOS如何获取最顶层ViewController详解

    这篇文章主要给大家介绍了关于iOS如何获取最顶层ViewController的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • IOS开发自定义Button的外观和交互行为示例详解

    IOS开发自定义Button的外观和交互行为示例详解

    这篇文章主要为大家介绍了IOS开发自定义Button的外观和交互行为示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • iOS应用中存储用户设置的plist文件的创建与读写教程

    iOS应用中存储用户设置的plist文件的创建与读写教程

    这篇文章主要介绍了iOS应用中存储用户设置的plist文件的创建与读写教程,plist文件是在Xcode下的项目中会被自动生成,里面采用XML格式记录数据,需要的朋友可以参考下
    2016-04-04

最新评论